我对Dimple.JS有疑问,他们的分组/订单规则方法不允许我像我一样控制条形列的顺序或对齐方式。
即使x轴顺序关闭,我也必须添加一行名为' Order'我的数据,以确保图表的x轴按组B的升序正确呈现(' 0-10'到' 90-100')
我的数据存储如下:
gdk_draw_pixbuf
然后这是我必须渲染条形图的代码:
var data = [];
var obj = {
'Group Bins': '0-10',
'Gender': 'Male',
'Rate': 20%,
'Order': 1
};
data.push(obj);
我使用它来渲染具有不同数据集的同一图表的多个实例,但条形图不按照确切的顺序排列。我希望'女性(蓝色)先来,然后是男性' (红色)每组中的列。
以下是具有不同数据集的两个实例,了解对齐是如何随机化的。它根本不符合规则。
看看酒吧里没有逻辑顺序?他们只是转换......
不知道如何控制这一点,到目前为止我已尝试添加订单规则,如
var svg = dimple.newSvg("#container", 1200, 400);
var myChart = new dimple.chart(svg, bardata);
myChart.setBounds(60, 20, 950, 300)
myChart.fontFamily = 'Courier';
myChart.assignColor('Male', "#0175AE", 'darkslategrey', 0.7);
myChart.assignColor("Female", "#E8603C", "crimson", 0.7);
var x_bar = myChart.addCategoryAxis("x", ['Group Bins', 'Gender'], false);
x_bar.addOrderRule('Order', false); //Exactly renders Group Bins in Order
var y_bar = myChart.addMeasureAxis("y", "Rate");
y_bar.tickFormat = "%"
var bar_series = myChart.addSeries("Gender", dimple.plot.bar);
bar_series.addOrderRule('Gender', true); //Exactly Renders Legend in Order
myChart.addLegend(500, 2, 510, 20, "right");
myChart.ease = "bounce";
myChart.draw(1000);
确保如何确保x轴具有正确顺序的所有Group Bins,以确保' Female'酒吧出现在男士'之前。
答案 0 :(得分:1)
您应该可以使用x_bar.addGroupOrderRule('Gender');