Dimple JS多个y轴 - 更改默认排序

时间:2016-04-27 06:04:23

标签: javascript sorting d3.js dimple.js

当我有2个轴时,我的数据在2d系列(“组”列)上排序。

我想要保留数据的原始排序或对第1个系列(“值”列)进行排序。

以下是图表的代码

var svg = dimple.newSvg("#chartContainer", 590, 400);
var data = [
 { 'Label': 'aaaa', 'Value': '135.54943277777', 'Group': '18.3948393336644'}, 
 { 'Label': 'bbb', 'Value': '120.80073333333', 'Group': '10.4281640646934'}, 
 { 'Label': 'ccc', 'Value': '110.54883277777', 'Group': '9.66131377875796'}, 
 { 'Label': 'ddd', 'Value': '98.86206666666', 'Group': '9.91368107242412'}, 
 { 'Label': 'eee', 'Value': '97.57636666666', 'Group': '9.49774852202884'}, 
 { 'Label': 'fff', 'Value': '96.04330000000', 'Group': '11.3224795444171'}, 
 { 'Label': 'ggg', 'Value': '73.57493333333', 'Group': '18.7054825008656'}, 
 { 'Label': 'hhh', 'Value': '66.72536666666', 'Group': '7.91852934981023'}, 
 { 'Label': 'iii', 'Value': '65.80693333333', 'Group': '10.2305178662186'}
];

var myChart = new dimple.chart(svg, data);
myChart.setMargins("60px", "60px", "40px", "40px");
var x = myChart.addCategoryAxis("x", "Label");
var y1 = myChart.addMeasureAxis("y", "Value");
var y2 = myChart.addMeasureAxis("y", "Group");
myChart.addSeries("Value", dimple.plot.bar, [x, y1]);
myChart.addSeries(null, dimple.plot.line, [x, y2]);
myChart.draw();

小提琴 http://jsfiddle.net/xgmtuqq5/

如何实现?

提前多多感谢

1 个答案:

答案 0 :(得分:0)

您必须在您的原始排序代码中添加OrderRule,或使用“值”列添加,例如:

x.addOrderRule("Label"); //for original sorting

x.addOrderRule("Value"); //for sorting using the column "Value"

您还可以通过在编码中设置为true来按降序排序,例如:

x.addOrderRule("Value",true); // for sorting in descending order