`
xf986321
  • 浏览: 163916 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

swfchart

阅读更多

swfchart

简介

Swfchart能够让你很轻松的将maani.us的SWF/XML Chart绘图工具 集成到你的Rails应用中。

安装

首先你需要去maani.us下载SWF/XML Chart ,目前经过测试的版本是4.6版,然后将其解压缩到你的public目录下:

public
|-- charts.swf
`-- charts_library
    |-- arno.swf
    |-- arst.swf
    |...........
    `-- scno.swf

然后安装swfchart generator:

$ cd $RAILS_ROOT/vendor/plugins
$ svn co https://svn.elctech.com/svn/public/plugins/swfchart swfchart

使用

1. 生成文件

$ ./script/generate swfchart
create lib/swfchart_helper.rb
create app/controllers/swfcharts_controller.rb
create app/models/swfchart.rb
create test/unit/swfchart_test.rb
create test/functional/swfcharts_controller_test.rb

2. 添加路由,你需要在route.rb中为swfchart添加一条路由:

map.swfcharts 'swfcharts/:name', :controller => 'swfcharts', :action => 'show'

3. 修改environment.rb,在启动时加载swfchart_helper.rb:

require 'swfchart_helper.rb'

4. 在需要绘制图表的view中调用swf_chart helper:

<%= swf_chart {|c|
  c.data_source = swfcharts_url(:name => "sample_line")
  c.width = "400"
  c.height = "320"
} %>

这将会在你的view中绘制一个400×320的图标控件,下面对图表的各个属性进行说明:

  • data_source,图表的数据来源,根据第二步添加的路由,上面的例子生成的URL为/swfcharts/sample_line,这是swfchart内置的数据源,它将会渲染一个线型图。
  • width,图表控件的宽度
  • height,图表控件的高度
  • bg_color,图表的背景颜色,比如”000000″代表黑色
  • transparent,是否透明,true表示透明
  • license,SWF/XML Chart免费版只提供有限的功能,因此,如果你需要使用增强功能,最好购买一个License

5. 如果你想要构造自己的数据源,可以参考sample_line,它是swfchart model的一个class method:

def self.sample_line
  swf = Swfchart.new('sample swf', 'line')
  swf.data_array = []
  swf.data_array[0] = ['a', 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]
  swf.data_array[2] = ['Region B', 1, 1, 2, 3, 4, 6, 8, 8, 5, 7, 9, 4, 8, 4 ]
  swf.data_array[1] = ['Region A', 53, 52, 52, 52, 50, 44, 43, 34, 32, 28, 25, 20, 15, 10]
  swf

end

Swfchart.new的第一个参数指明图表的名称,第二个参数是图表的类型,这里我们创建一个线性图,事实上还有第三个参数,它指名横轴坐标的显示间隔,默认为2。

data_array存储真正的数据源,第一列存储横轴的坐标,显示间隔为2意味着,横轴只会显示1,4,7,10,13这几个数值,后面各列是真正的数据,每列数据的第一个元素为这个数据的名称。

6. 就这么简单,当然如果你需要更复杂的控制,swfchart还提供以下属性可供修改:

  • axis_ticks
  • axis_value
  • chart_border
  • chart_grid_h
  • chart_grid_v
  • chart_pref
  • chart_rect
  • chart_transition
  • chart_value_text
  • chart_value
  • draw
  • legend_label
  • legend_rect
  • legend_transition
  • link
  • link_data
  • live_update
  • series_color
  • series_explode
  • series_gap
  • series_switch

关于这些属性的含义及用法请参看maani.us的相关文档 ,如果需要修改这些属性,则只需要将XML attributes转换为Ruby hash即可,比如:

swf.chart_rect = {'x'=>4, 'y'=>4, 'width'=>72, 'height'=>52, 'positive_color'=>"ffffff", 'negative_color'=>"ffffff", 'positive_alpha'=>100, 'negative_alpha'=>100}

将覆盖原有的chart_rect属性。

7. 最后给出上面的line chart截图,有一些难看:

chart.png

分享到:
评论

相关推荐

    Plugin swfchart

    "Plugin swfchart"是一个关于使用SWFChart插件创建图表的IT主题。SWFChart是一款流行的开源Flash图表库,它允许开发者通过简单的XML配置来生成各种动态、美观的图表,广泛应用于数据可视化和报告展示。 这篇博客...

    根据XML数据动态生成图表(SWF版本)

    动态生成图表首先需要一个图表库或工具,这里我们提及的是SWFChart,它是一个专门用于创建SWF图表的库。SWFChart允许开发者通过XML配置文件来定义图表的样式、数据以及行为。这样,即使在运行时,也可以轻松地更改...

    swiffchart

    这款软件由GlobFX公司开发,用户可以通过其官方网站&lt;https://www.globfx.com/products/swfchart/&gt;获取更多信息和资源。SwiffChart以其简单易用的界面和丰富的图表类型而受到用户的青睐,支持多种数据可视化方式,...

    生成饼图的flash

    对于PHP,我们可以利用开源库如“SWFChart”或“SWFObject”。它们允许开发者通过设置参数来创建自定义的饼图,包括颜色、标签、数据值等。通常,这九个参数可能包括: 1. 数据值:每个扇区所代表的数值,决定了...

    vmware workstatiions pro 17.6.1个人使用免费,不用证书直接安装使用

    虚拟机vmware workstatiions pro 17.6.1个人使用免费,不用证书直接安装使用

    scipy-1.2.0-cp35-cp35m-linux_armv7l.whl

    scipy-1.2.0-cp35-cp35m-linux_armv7l.whl

    基于springboot爬虫高考志愿智能推荐系统源码数据库文档.zip

    基于springboot爬虫高考志愿智能推荐系统源码数据库文档.zip

    bimdata_api_client-4.3.0-py3-none-any.whl

    bimdata_api_client-4.3.0-py3-none-any.whl

    Pillow-7.0.0-cp37-cp37m-linux_armv7l.whl

    Pillow-7.0.0-cp37-cp37m-linux_armv7l.whl

    onnxruntime-1.16.2-cp38-cp38-win_amd64.whl

    onnxruntime-1.16.2-cp38-cp38-win_amd64.whl

    opencv_python-4.4.0.46-cp39-cp39-linux_armv7l.whl

    opencv_python-4.4.0.46-cp39-cp39-linux_armv7l.whl

    springboot196高校教师科研管理系统.zip

    论文描述:该论文研究了某一特定领域的问题,并提出了新的解决方案。论文首先对问题进行了详细的分析和理解,并对已有的研究成果进行了综述。然后,论文提出了一种全新的解决方案,包括算法、模型或方法。在整个研究过程中,论文使用了合适的实验设计和数据集,并进行了充分的实验验证。最后,论文对解决方案的性能进行了全面的评估和分析,并提出了进一步的研究方向。 源码内容描述:该源码实现了论文中提出的新的解决方案。源码中包含了算法、模型或方法的具体实现代码,以及相关的数据预处理、实验设计和性能评估代码。源码中还包括了合适的注释和文档,以方便其他研究者理解和使用。源码的实现应该具有可读性、可维护性和高效性,并能够复现论文中的实验结果。此外,源码还应该尽可能具有通用性,以便在其他类似问题上进行进一步的应用和扩展。

    ta_lib-0.5.1-cp313-cp313-win32.whl

    ta_lib-0.5.1-cp313-cp313-win32.whl

    STM32开发相关软件ISP程序下载

    STM32开发相关软件ISP 程序下载STM32开发相关软件ISP 程序下载提取方式是百度网盘分享地址

    java源码资源基于JAVA的UDP服务器模型源代码

    java源码资源基于JAVA的UDP服务器模型源代码提取方式是百度网盘分享地址

    基于Python+Django的电影票房数据分析系统源码数据库文档.zip

    基于Python+Django的电影票房数据分析系统源码数据库文档.zip

    onnxruntime-1.19.0-cp311-cp311-win_amd64.whl

    onnxruntime-1.19.0-cp311-cp311-win_amd64.whl

    java固定资产管理系统源码数据库 MySQL源码类型 WebForm

    Java固定资产管理系统源码 固定资产管理系统是对高校固定资产的一个信息化管理系统,基本功能包括:对固定资产的购进、接触、销毁,对物品的使用状态、借出状态、库存状态等进行标识,对各类物品进行编号,根据编号进行查询,根据名称进行查询等。本系统结构如下: (1)系统登录:用户登录模块:登录功能 重置 (2)系统用户管理:对系统用户的增加 系统用户的权限修改 系统用户的删除 分配系统用户的权限 修改本身登录密码 资产的相关维护 (3)员工信息管理:教工的增加、修改、删除、查询 (4)资产入库管理:资产的属性修改 资产的报废删除 资产的属性查询 (5)资产维护管理:物资的维修、维护物资的信息修改 (6)资产借还管理:增加借出资产 查询借出资产 归还已借出资产(7)打印报表

    matplotlib-3.7.0-cp311-cp311-linux_armv7l.whl

    matplotlib-3.7.0-cp311-cp311-linux_armv7l.whl

    基于springboot的房屋租赁管理系统源码数据库文档.zip

    基于springboot的房屋租赁管理系统源码数据库文档.zip

Global site tag (gtag.js) - Google Analytics