【发布时间】:2014-05-10 01:30:26
【问题描述】:
我在饼图中显示数据时遇到了一些问题。
我创建了一个 jsfiddle 来演示我的问题。
我提供以下数据:
var data = google.visualization.arrayToDataTable([
['Year','Positive','Negative','Neutral','Comments','Score'],
[ '2010', 74, 26,49,'bad',12345],
[ '2011', 50, 50,13, 'good',78456],
[ '2012', 80, 20,56, 'good',56897],
[ '2013', 40, 60,26, 'good',25789],
[ '2014', 70, 30,60, 'bad',124536],
]);
问题 1
如果您查看 jsfiddle,组合图(饼图下方)显示完美,但饼图未正确显示值。那么饼图是否只能显示来自 1 列的值?因为即使我通过了
'view': {'columns': [0,1,2,3]}
它仍然只取第 1 列的值。
问题2
从下拉列表中,如果我选择一年,比如 2011 年,那么饼图仍然只显示第 1 列的值。但组合图表现良好。
我在这里做错了吗?
【问题讨论】:
-
你为什么要画饼图?饼图旨在显示不同值的静态百分比(例如 2011 年儿童/成人/老年人的百分比)。但是你这里有动态数据(数据随时间变化),所以我建议绘制面积图的折线图而不是饼图。或者,您可以仅在选择年份时使用饼图并仅显示该年份的值(如果这是您想要显示的)
-
感谢@RuslanBes。嗯,我想在场景 1 中显示饼图没有意义。现在,关于我的问题 2,我想做你建议的事情,但即使这样也行不通。所以我需要以不同的方式传递数据?
-
对于场景 2,我的猜测是您必须创建两个数据源(每个图表一个)并分别管理它们。但这不是一个简单的任务任务,需要一些 js/jquery 编程。
-
酷..我可以编写逻辑来做到这一点。只是想知道是否有任何默认方式这样做...谢谢。
-
PieCharts 将只使用两列:一列用于切片标签,另一列用于值。为了得到你想要的,你必须将你的数据以这种格式放置在 PieChart 中。这是一个示例:jsfiddle.net/asgallant/6M2sH/15
标签: javascript google-visualization