我的数据嵌套在希望添加值滑块以动态更改年份。一个条目如下:
key: "dot1"
values: Array[3]
[0]: Object
x: 3
y: 2
[1]: Object
x: 2
y: 5
[2]: Object
x: 3
y: 5
key: "dot2"
etc...
有没有办法访问图表的值?类似的东西:
var chart = new dimple.chart(svg, rawData);
chart.setBounds(90, 35, 480, 325)
var myyAxis = chart.addMeasureAxis("y", "values[0][y]");
var myxAxis = chart.addMeasureAxis("x", "values[0][x]");
chart.addSeries(["key"], dimple.plot.bubble);
chart.draw(1000);
答案 0 :(得分:0)
您无法将计算字符串添加为度量属性,因此我知道实现此目的的最简单方法是格式化数据以展平内部数组,因此不是
key: "dot1"
values: Array[3]
[0]: Object
x: 3
y: 2
[1]: Object
x: 2
y: 5
[2]: Object
x: 3
y: 5
你最终得到了
[
{ 'key' : 'dot1', 'x' : 3, 'y' : 2 },
{ 'key' : 'dot1', 'x' : 2, 'y' : 5 },
{ 'key' : 'dot1', 'x' : 3, 'y' : 5 },
]
我在这里有一个基本的例子:http://jsbin.com/rijuvoneyu/1/edit?js,output
它使用underscore.js来映射数据集中的每一行,将每个值数组映射到内部(因此对于数据集中每1行最终得到3个),然后将整个结构展平。现在您可以使用'x'和'y'作为测量轴的属性。 您会注意到我为每个新数据行添加了唯一标识符。没有它,如果我只做了
var series = chart.addSeries(["key"], dimple.plot.bubble);
dimple正在添加共享相同“key”的所有值,因此只绘制两个气泡。我不确定是否有更好的方法可以在没有唯一ID的情况下发生这种情况,但它运作良好。