Dojo StackedAreas图表不接受对象作为值

时间:2012-02-20 18:14:00

标签: javascript dojo dojox.charting

我使用的每个Dojo图表都允许使用包含每个值点的一系列值和工具提示的对象数组。

使用StackedAreas图表类型时,Dojo似乎忽略了对象内部的值。例如:

var values = [
    {x: 1, y: 10, tooltip: 'test1'},
    {x: 2, y: 30, tooltip: 'test2'},
    {x: 3, y: 60, tooltip: 'test3'}
];

这适用于Lines,Columns和StackedColumns图表类型。图表呈现轴,您可以看到位于char基线上的标记,就好像我只为所有值提供了零。

提前致谢。希望这是有道理的。

1 个答案:

答案 0 :(得分:2)

该文档在此页面上指定了不同的类型:“将图表连接到数据并指定数据系列”一节中的http://dojotoolkit.org/reference-guide/dojox/charting.html

对于任何非“堆叠”线图类型,您可以指定坐标对。您需要使用与addPlot()调用中定义的hAxis和vAxis参数相对应的键。这些默认为x和y。

[...]

对于任何堆叠的绘图类型,使用addSeries()添加的每个数据集都相对于前一个集合放置。这是一个显示这个概念的简单例子。而不是第二个数据集是1的直线,所有点都比第一个数据集的点高1。

chart1.addSeries("Series 1", [1, 2, 3, 4, 5]);
chart1.addSeries("Series 2", [1, 1, 1, 1, 1], {stroke: {color: "red"}});

因此,对于堆叠区域图上的工具提示,首先必须激活绘图上的标记,然后必须使用自定义dojox / charting / action2d / Tooltip,它采用自定义函数生成所需的工具提示。

我在这里做了一个例子:http://jsfiddle.net/psoares/nUe3C/

希望它有所帮助...