我第一次尝试使用名为gchartrb的Ruby包装器来使用Google图表。我的第一个尝试是画一个条形图,效果相当好,除了最大的值(趋势2- 800)命中y轴的顶部。我猜这是Google Charts的问题,但我想知道是否有办法绕过这个问题,以便所有值都能正确缩放?
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发布于 2009-09-15 08:10:50
放弃了这块宝石,转而直接使用Google Charts。
发布于 2013-01-11 14:36:47
对于伸缩问题,对于bc.axis属性有一个名为'range‘的选项,
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属性,因为它会根据值自动缩放,并为您提供标签。
因此,你不会有伸缩性的问题。
希望它能有所帮助:)
https://stackoverflow.com/questions/1389401
复制相似问题