Ruby的图表库

10

我正在寻找一种特定的工具,在Ruby on Rails应用程序中生成图表。我已经做了研究,但未能找到适合我的解决方案。

也许你已经碰巧遇到了它,并且可以通过链接直接指向它?:)

我对该解决方案的要求是:

  • 必须具备基本的图表类型,例如饼图、柱状图、堆积柱状图和折线图。
  • 必须具备基本的图表配置,如图例、轴描述。
  • 必须能够在不实际在浏览器中渲染的情况下生成并保存图表为图像文件
  • 最好是一个Ruby库,但这不是必须的。
  • 不是Gruff图形库,我正在寻找更现代化、问题更少的东西。

如果您知道任何内容,请发布链接-这只需要几秒钟。


8个回答

6

这个无法在服务器端编写图像文件。 - fxtentacle

5
我用Google Chart API制作了许多有用的图表。其中有几个宝石:googlechartsgchartrb。虽然我没有使用过它们,但是它们看起来是一个不错的开始。
至于不显示它,您只需调用并保存结果即可。无需呈现,只需进行调用,获取URL并获取文件即可。

1
嗨,感谢回复。Google Chart API非常棒。我已经考虑过像这样做了,但问题是——发送的数据不加密。如果我漏掉了什么,或者你可以指点我去哪里可以阅读有关与Google Chart API进行安全通信的信息,请告诉我 :) - socjopata
哎呀,谷歌似乎不支持SSL上的图表。我很好奇你的威胁模型是什么。无论是否使用SSL,您已经将数据提供给了谷歌,因此这似乎并不是什么大问题。如果您在任何情况下都缓存数据,则可以通过SSL向您网站的访问者提供服务,而不管谷歌如何向您提供它。 - Paul Rubel

3

4
如何在不将图表呈现于浏览器中的情况下生成并保存图像文件? - B Seven

3

唯一满足以下所有条件的是:

  • 我能够使其工作而无需安装奇怪的依赖项
  • 不需要HTML上下文要求(所有JS库)
  • 不依赖于GCharts(网络流量依赖性)
  • 导出为静态图形格式

这个是gerbilcharts


它能导出为png吗?看起来它只是在视图中呈现SVG。 - Jonathan Julian

2
自从我提出这个问题已经很久了,我看到新人来发布新的答案,这非常好。我的这篇小文章成为一个可用库的小汇编。
我决定添砖加瓦。现在,每当我处理图表时,我通常使用Highcharts。Highcharts本身是一个非常愉快的库,但另外有一个令人难以置信的宝石highcharts_on_rails,它使用Ruby编写的DSL简化了创建图表的过程。
如果你发现了这个问题,并且正在寻找选项,请考虑使用highcharts_on_rails

1
这个可能能够实现你想要的功能: Gruff

嗨,谢谢回复,但其中一个要求是不使用Gruff图形库;)) - socjopata
哈哈,抱歉,不确定我是怎么错过它的。 - sosborn
在再次研究了9年后的图形库现状之后,我最终选择了Gruff,因为它似乎是唯一一个不需要NodeJS和完整的Web浏览器,也不会在Windows和Linux上有不同表现的库。Gruff内部使用RMagick,它是ImageMagick的一个包装器,在几乎所有地方都能正常工作。 - fxtentacle

1

您可以使用rchart绘制各种图表。


我发现在Windows上很难让GD2正常工作,所以这个似乎只适用于Linux且相当旧。 - fxtentacle

0

嗨,谢谢你的快速回复。虽然我注意到我自己表达得不太清楚。我需要将图表保存为像 jpg 这样的文件,而不是渲染它 :) - socjopata

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接