Dimple.js Axis标签

时间:2014-09-10 20:48:39

标签: d3.js dimple.js

我有一个数据集,其中每一行都有idname属性。 id属性是唯一键,name可能是重复的。我希望名称显示在Dimple.js图表​​的类别轴上。

如果我使用“name”作为chart.addCategoryAxis的参数,则绘制正确的标签,但具有重复名称的用户被分组为单个栏。 如果我使用“id”作为参数,则条形图将被分隔,但标签错误。

是否有“Dimple”方法来实现这一点,或者我应该只是:

这样说明(点击开关按钮查看我的意思):http://jsbin.com/bupamo/4/edit?js,output

1 个答案:

答案 0 :(得分:4)

感谢您的明确解释。这不是真正的酒窝本身,但你可以通过绘制id并在事后替换它来实现它:

你还需要做一些像这样的其他调整:

// Set the title before drawing
xAxis.title = 'name';
// Draw the axis with id's
chart.draw(0, false);
// Now set the category fields to name so that the tooltips are correct
xAxis.categoryFields = ['name'];
// Select the ID labels and replace the text with names
xAxis.shapes
   .selectAll("text")
       .text(function (d) { 
           var i;
           for (i = 0; i < initialData.length; i += 1) {
               if (initialData[i].id === d) {
                   return initialData[i].name;
               }
           }
       });

http://jsbin.com/lezocu/4/edit?js,output