【IT168 文档】当我们的Rails应用程序需要对某些数据进行各种分析的时候,这时生成图表就成为该程序的一项重要的功能。Open Flash Charts为图形化展示我们的应用程序的数据提供了一个良好的接口,此外,对于Rails应用程序来说,还可以通过一些Ruby on Rails插件方便地将Open Flash Charts集成到我们的应用中来。 本文中,我们将为读者详细介绍如何使用稳定的、简单的PullMonkey插件在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。
safew@ltsp:~/ofc$ script/plugin install http://github.com/pullmonkey/open_flash_chart.git
从plugin目录下将javascripts和SWF对象拷贝至application目录。下面是这些文件的清单:
open-flash-chart-bar-clicking.swf
open-flash-chart.swf
safew@ltsp:~/ofc/vendor/plugins/open_flash_chart/assets$ sudo cp -r * /home/safew/ofc/public/
三、生成静态图表
现在,我们已经为生成静态图表做好了准备。接下来,我们首先需要生成一个控制器。
exists app/controllers/
exists app/helpers/
create app/views/graphs
exists test/functional/
create test/unit/helpers/
create app/controllers/graphs_controller.rb
create test/functional/graphs_controller_test.rb
create app/helpers/graphs_helper.rb
create test/unit/helpers/graphs_helper_test.rb
为了生成图表,我们需要添加一个名为get_graph的方法,并定义如下所示的参数:
*图表的标题
*图表类型
*需要以图形化形式呈现的值
在本例中,我们将要生成一个柱状图表。
@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
现在,我们把它放入我们的视图中。命令@_graph只是从控制器中获取对象,并在视图中呈现出来。
<%= @graph %>
这样,当我们导航到localhost:3000/graphs时,就会看到我们的输出效果了,具体请见图1。
图1 Open Flash Charts生成的柱状图表