首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ruby和Google图表-使用gchartrb

Ruby和Google图表-使用gchartrb
EN

Stack Overflow用户
提问于 2009-09-07 13:16:40
回答 2查看 1.3K关注 0票数 0

我第一次尝试使用名为gchartrb的Ruby包装器来使用Google图表。我的第一个尝试是画一个条形图,效果相当好,除了最大的值(趋势2- 800)命中y轴的顶部。我猜这是Google Charts的问题,但我想知道是否有办法绕过这个问题,以便所有值都能正确缩放?

代码语言:javascript
复制
labels = [1, 2, 3, 4]
GoogleChart::BarChart.new('800x200', "Bar Chart", :vertical, false) do |bc|
bc.axis :x, :labels => labels, 
            :color => '000000' # Months
            bc.axis :y, :labels => [0, 100, 200, 300, 400, 500, 600, 700, 800, 900], 
            :color => '000000' # Number of books
  bc.data "Trend 1", [100,200,300,400], '0000ff'
  bc.data "Trend 2", [500,600,700,800], 'ff0000'
   bc.width_spacing_options :bar_width => 50, :bar_spacing => 0, :group_spacing => 0
  puts "\nBar Chart"
  puts bc.to_url
end
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-09-15 08:10:50

放弃了这块宝石,转而直接使用Google Charts。

票数 2
EN

Stack Overflow用户

发布于 2013-01-11 14:36:47

对于伸缩问题,对于bc.axis属性有一个名为'range‘的选项,

代码语言:javascript
复制
bc.axis :y, :color => '000000', :range => [0,max_scale_value]

您可以将max_scale_value设置为数据值的最大值。

1)如果并排显示条形图,可以根据您的数据将max_scale_value设置为800。例如,两个数组的最大值。

2)如果要显示堆叠的条形图(一个在另一个之上),则应将max_scale_value设置为(100+500)、(200+600)、(300+700)、(400+800)中的最大值

3)您需要删除y -axis的labels属性,因为它会根据值自动缩放,并为您提供标签。

因此,你不会有伸缩性的问题。

希望它能有所帮助:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1389401

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档