我有一个简单的线图,数据格式如下:

[
    {
        label: "lebel1",
        x: 0,
        y: 128
    },
    {
        label: "lebel1",
        x: 1,
        y: 128
    },
    ....
    {
        label: "lebel2",
        x: 25,
        y: 128
    },
    ....
    {
        label: "lebel8",
        x: 285,
        y: 128
    },
    ....

}
我把这个传给我的nvd3对象:
nv.addGraph(function()
{
    var chart = nv.models.lineChart();

    chart.xAxis
        .axisLabel("My X-Axis")
        .ticks(36)
        .tickFormat(function(d) { return d; });

    chart.yAxis
        .axisLabel('Voltage (v)')
        .tickFormat(d3.format('.02f'));

    d3.select('div svg')
        .datum(myData)
        .transition().duration(500)
        .call(chart);

    nv.utils.windowResize(function() { d3.select(gridSvgId).call(chart) });

    return chart;
});

我怎样才能让我的X轴滴答显示:
*八个标签:label1-label8
而不是把网格分割成不同数量的线?

最佳答案

试试这样的

chart.xAxis.tickValues(['Label 1','Label 2','Label 3','Label 4','Label 5','Label 6','Label 7','Label 8']);

或者如果你想从数据集中得到它,你可以试试这样的方法,
chart.xAxis.tickValues(function(d) {
    // do all you stuff and return an array
    var dataset = ['Build Array from data'];

    return dataset;
};)

希望有帮助

关于nvd3.js - NVD3-更改折线图上的X标签轴,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34377255/

10-16 13:01