Dimple Barplot无法使用分组或订单规则有效地对齐或订购条形图

时间:2016-04-07 17:50:40

标签: javascript dimple.js

我对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);

我使用它来渲染具有不同数据集的同一图表的多个实例,但条形图不按照确切的顺序排列。我希望'女性(蓝色)先来,然后是男性' (红色)每组中的列。

以下是具有不同数据集的两个实例,了解对齐是如何随机化的。它根本不符合规则。

Bar 1 (Problematic)

Bar 2 (Correct)

看看酒吧里没有逻辑顺序?他们只是转换......

不知道如何控制这一点,到目前为止我已尝试添加订单规则,如

  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'酒吧出现在男士'之前。

1 个答案:

答案 0 :(得分:1)

您应该可以使用x_bar.addGroupOrderRule('Gender');

执行此操作