`

Rails 集成Open Flash Charts

阅读更多

 一、Open Flash Charts简介

  Open Flash Chart是一个免费、开源的优秀Flash统计图表库,可以提供各种图表来展示你的数据,其统计数据可以来自php, perl, python, java, asp, asp.net或直接就是文本文件甚至数据库。Open Flash Chart使用flash展示报表能够很好的做到与浏览器进行集成,因为目前浏览器基本都能很好的支持flash。

  当我们的Rails应用程序需要对某些数据进行各种分析的时候,生成图表就成为该程序的一项重要的功能。Open Flash Charts为图形化展示我们的应用程序的数据提供了一个良好的接口,这里向大家介绍如何在Rails应用程序中使用Open Flash Charts。

  通过一些Ruby on Rails插件,我们可以在Rails应用程序中方便地应用Open Flash Charts。在这些插件中,PullMonkey可算得上是最为稳定的一个,并且它用起来也非常简单。对于Java来说,我们可以使用Open Flash Charts来展示数据,并且通过Java插件将数据传递给Open Flash Chart。在本文中,我们使用的插件为PullMonkey。

  二、安装PullMonkey

  首先,我们创建一个空白Ruby on Rails应用程序,并安装Open Flash Charts插件PullMonkey。

从plugin目录下将javascripts和SWF对象拷贝至application目录(assets/或 public)

三个文件:

swfobject.js
open
-flash-chart-bar-clicking.swf
open
-flash-chart.swf

     三、生成静态图表

  为了生成图表,我们需要添加一个名为get_graph的方法,并定义如下所示的参数:

  *图表的标题

  *图表类型

  *需要以图形化形式呈现的值

  在本例中,我们将要生成一个柱状图表。

 

 

def index @graph = open_flash_chart_object(600,300,"/graphs/get_graph") end def get_graph title = Title.new("Bar Graph") #定义标题

bar = BarGlass.new #定义类型

bar.set_values([5,2,9,10,1,4]) chart = OpenFlashChart.new chart.set_title(title) chart.add_element(bar) render :text => chart.to_s end

 现在,我们把它放入我们的视图中。并在视图中呈现出来。

 

<script type="text/javascript" src="/javascripts/swfobject.js"></script> <%= @graph %>

 后台数据生成: 新建model ,表

def graph_code
    bars   = []
     colours = ["#747170", "#5CB3FF"]
    
    appraisals = Appraisal.find(:all) 
    appraisals.each do |metric, rating| 
      # 3d bar graph, could be any bar graph though 
      bar = Bar3d.new 
#     bar=BarGlass.new
      bar.set_key(metric, 3) 
      bar.colour = colours[bars.size] 
      bar.values = appraisals.map(&:rating) 
      bars << bar 
    end
    
    title = Title.new("Appraisal Report") 
    x_axis = XAxis.new 
    x_axis.labels = ["Saurabh", "Sudhir"] 
    y_axis = YAxis.new 
    y_axis.set_range(0, 100, 10)
    graph = OpenFlashChart.new 
    graph.bg_colour = '#ffffcc' 
    graph.title = title 
    graph.x_axis = x_axis 
    graph.y_axis = y_axis 
    graph.elements = bars 
    render :text => graph.to_s 
  end

 

 

开启服务,访问页面

插件包括各种主要图表,例如:饼图,柱图,折线图等。

具体参考网址:http://pullmonkey.com/projects/open_flash_chart2/

 

 

分享到:
评论

相关推荐

    rails open_flash_chart

    在Rails应用中集成Open Flash Chart,首先需要在项目中添加对应的gem。在`Gemfile`中加入`open_flash_chart`,然后运行`bundle install`来安装。接下来,你需要了解如何构建图表对象和传递数据。Open Flash Chart...

    angular_rails_csrf, 面向AngularJS的Rails 集成风格的CSRF保护.zip

    angular_rails_csrf, 面向AngularJS的Rails 集成风格的CSRF保护 angularjs对 Rails的CSRF保护 AngularJS的 $http服务已经构建了CSRF保护。 默认情况下,它查找名为 XSRF-TOKEN的cookie,如果发现,将它的值写入 X-...

    minitest-rails, Rails的Minitest集成.zip

    minitest-rails, Rails的Minitest集成 minitestRails 5的Minitest集成 安装gem install minitest-rails这将安装以下宝石:minitest配置创建一个新的Rail

    adminlte-rails, AdminLTE Rails gem 将AdminLTE主题与 Rails 资产管道集成.zip

    adminlte-rails, AdminLTE Rails gem 将AdminLTE主题与 Rails 资产管道集成 AdminLTE Rails gem AdminLTE 是后端的高级 Bootstrap 主题。英镑 AdminLTE Rails gem 与 Rails 资产管道集成了英镑AdminLTE主题。安装将...

    tinymce-rails, 集成TinyMCE与 Rails 资产管道.zip

    tinymce-rails, 集成TinyMCE与 Rails 资产管道 用于TinyMCE的 Rails 集成tinymce-rails gem 将 TinyMCE 编辑器与 Rails 资产管道集成在一起。这里 gem 与 Rails 3.1.1和更高的( 包括 Rails 4 ) 兼容。这是 Tiny

    cloudinary_gem, 用于 Ruby on Rails 集成的Cloudinary gem.zip

    cloudinary_gem, 用于 Ruby on Rails 集成的Cloudinary gem CloudinaryCloudinary是一个云服务,提供了一个解决方案,可以解决整个应用程序图像管理管道的问题。轻松将图片上传到云。 自动执行智能图像调整,裁剪和...

    open flash chart

    在这个项目中,它可能会详细解释如何集成Open Flash Chart到你的Web应用中,包括配置、API使用、示例代码等内容,是初学者快速上手的关键。 在提供的文件列表中,我们可以看到以下几个关键部分: 1. **...

    webpack-rails, 将 web pack与你的Ruby on Rails 应用程序集成.zip

    webpack-rails, 将 web pack与你的Ruby on Rails 应用程序集成 不再维护webpack-rails 不再被维护。 有关详细信息,请参阅 #90. web pack-railsweb pack 为你提供了将 web pack集成到现有的Ruby on Rails 应用程序中...

    Ruby on Rails:Rails与JavaScript集成.docx

    Ruby on Rails:Rails与JavaScript集成.docx

    关于rails 3.1 cucumber-rails 1.2.0

    Cucumber-Rails集成了Cucumber与Rails,使得开发者能够在Rails环境中方便地使用Cucumber进行功能测试。 在 Rails 应用中使用 Cucumber-Rails,开发者可以创建一个名为`features`的目录,里面包含这些Gherkin特性...

    ckeditor-rails, 集成 CKEditor javascript库和 Rails 资产管道.zip

    ckeditor-rails, 集成 CKEditor javascript库和 Rails 资产管道 用于 Rails 资产管道的 CKEditorCKEditor 是一个WYSIWYG编辑器用来使用 inside 网页的库。ckeditor_rails gem 将 CKEditor 与 Rails 资产管道集成在...

    weixin_rails_middleware, 微信集成 ruby weixin_rails_middleware for integration weixin..zip

    `weixin_rails_middleware` 是一个开源的 Ruby 框架中间件,设计用于帮助开发者轻松地在 Rails 应用程序中集成微信服务。这个中间件提供了与微信API交互的功能,包括验证微信服务器的请求、处理用户消息、以及发送...

    pjax_rails, Rails的PJAX集成.zip

    pjax_rails, Rails的PJAX集成 用于 Rails 3.2 的 PJAX 通过资产管道将 wanstrath PJAX的Chris 集成到 Rails 3.2 中。要激活,请将它的添加到 app/assets/javascripts/application.j

    rodauth-rails:用于Rodauth身份验证框架的Rails集成

    为身份验证框架提供Rails集成。 目录 资源资源 有用的链接: 文章: 为什么选择Rodauth? 已经有几种流行的Rails身份验证解决方案(Devise,Sorcery,Clearance,Authlogic),那么为什么要选择Rodauth? 以下是...

    Rails项目源代码

    Rails鼓励TDD(测试驱动开发),包括单元测试、集成测试和功能测试。RSpec、Capybara等库可以帮助编写和运行这些测试,确保代码质量。 这个Rails项目提供了学习和研究Web开发的机会,特别是对于Ruby on Rails新手...

Global site tag (gtag.js) - Google Analytics