0

我正在创建谷歌图表来显示过去 7 天的谷歌分析数据。当我有某些数据时,我遇到了 X 轴标签堆叠在一起的问题(或者至少我能说的只是不同。)

我正在使用这个 gem 生成 API 调用:https ://github.com/mattetti/googlecharts我查看了 URL 的每个部分都在做什么,但找不到问题,但我确定我我错过了一些东西。

这是同一时间段内两个站点数据的示例,第一个显示问题,第二个是工作示例:

破损的图表

工作表

这是 URL,这些是为便于阅读而编码的文本,但在切换到简单或扩展编码时也会出现同样的问题:

损坏的版本:

https://chart.apis.google.com/chart?chxl=0:|11-22|11-23|11-24|11-25|11-26|11-27&chxt=x&chco=58838C,BF996B,BF5841,A61C1C&chf=bg,s,ffffff&chd=t:979,807,681,653,580,509|822,724,602,562,519,455|540,409,381,375,336,301|307,156,173,176,155,133&chds=0,979&chdl=Visits|Visitors|New+Visits|Organic+Searches&chtt=Google+Analytics+-+Last+7+Days&cht=lc&chs=600x200&chxr=0,979,979|1,822,822|2,540,540|3,307,307

工作版本:

https://chart.apis.google.com/chart?chxl=0:|11-22|11-23|11-24|11-25|11-26|11-27&chxt=x&chco=58838C,BF996B,BF5841,A61C1C&chf=bg,s,ffffff&chd=t:1385,1395,981,947,863,731|1083,1222,832,715,690,546|580,566,427,413,387,329|247,151,151,171,162,135&chds=0,1395&chdl=Visits|Visitors|New+Visits|Organic+Searches&chtt=Google+Analytics+-+Last+7+Days&cht=lc&chs=600x200&chxr=0,1385,1395|1,1083,1222|2,580,580|3,247,247
4

1 回答 1

1

chxr 值不正确。gem 为多个轴生成它们,而它应该只为一个轴生成它们。我手动覆盖了 gem 中的最小值、最大值和步长,它起作用了。

这是我使用 gem 的代码,首先从我的所有数据点中获取最大值:

[@visits,@visitors,@new_visits,@organic_searches].each do |array|
  array.values.each do |value|
    @max_value = value if (value > @max_value)
  end
end

# Chart it
chart = Gchart.line(
  :title => prop.to_s.upcase + ' Google Analytics - Past 7 Days',
  :size => '600x200',
  :bg => 'ffffff',
  :axis_with_labels => ['x'],
  :axis_labels => [@visits.keys],
  :legend => ['Visits','Visitors','New Visits','Organic Searches'],
  :line_colors => ['58838C','BF996B','BF5841','A61C1C'],
  :encoding => 'text',
  :data => [@visits.values,@visitors.values, @new_visits.values, @organic_searches.values],
  :max_value => @max_value,
  :axis_range => [nil, [0, @max_value, (@max_value / 10).to_i]],
  :format => 'image_tag')
于 2012-11-29T17:07:07.830 回答