如何设置 nvd3 轴使用字符串而不是数值?

2024-01-03

我想设置属性名称,而不是 x 轴上的数值。 我不是 JavaScript 英雄。 我正在使用散点图。

我相信它应该是这样的:

chart.xAxis.tickFormat(d3.format(String));

然后我可以设置:

chart.xAxis
  .axisLabel('Attributes').staggerLabels(true).tickValues(["A", "B", "C"]);;

然后设置值:

data[i].values.push({
 x : "A" ,
       y : 29.765957771107,
    size: Math.random(), 
    shape: shapes[j % 6]
     } , ..

如何在 x 轴上查看我的属性“A”、“B”等? 我也浏览了 nvd3 源代码,但没有找到正确的 API 调用。


您可以传入返回标签的格式函数。这是d3js的一个API。

var x_format = function(num) {
    if (num === 2.3)
        return "A";
    else if (num === 5.6)
        return "B";
    else if (num === 45.2)
        return "C";
};

var xAxis = d3.svg.axis()
    .scale(x)
    .orient("bottom")
    .tickFormat(x_format);

查看我为散点图制作的这个示例。

http://vida.io/documents/jSGz9TQEmzwMqQzhs http://vida.io/documents/jSGz9TQEmzwMqQzhs

{(A,2.3),(B,5.6),(C,45.2)}

Update:我的答案是固定值。

Update:折线图、条形图、散点图的混合组合:

http://vida.io/documents/fN5FjsYaHaJSXEjz7 http://vida.io/documents/fN5FjsYaHaJSXEjz7

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何设置 nvd3 轴使用字符串而不是数值? 的相关文章

随机推荐