PlotlyJS,将辅助x轴放置在另一个x轴下方

时间:2019-10-17 12:52:23

标签: javascript plotly

我有一个带有多个x轴的plotlyJS图表。

我希望有一个x轴每n分钟显示一次刻度标签,又有一个x轴每天显示刻度标签。

我希望第二个x轴(天)位于分钟x轴下方。

这可能吗?到目前为止,我有:

function buildFixedLayout() {
    return {
        title: $("#qsName").val(),
        showlegend: false,
        xaxis: {
            showgrid: true,
            zeroline: true,
            autotick: false,
            dtick: 600000,
            showticklabels: false,
        },
        xaxis2: {
            autotick: false,
            dtick: 3600000,
            showticklabels: true,
            overlaying: "x",
            tickformat: "%H"
        },
        xaxis3: {
            autotick: false,
            dtick: 86400000,
            showticklabels: true,
            overlaying: "x",
            tickformat: "%a",
            anchor: "free",
            position: "0"

        },
        yaxis: {
            title: rxgDefRateAsPercentOfInsp,
            showline: true,
            showgrid: true,
            zeroline: true,
            fixedscale: true,
            fixedrange: true,
            range: [0, 10]
        },
        shapes: thresholdBackground(true)
    };
}

这将导致显示:(请注意星期四)与分钟重叠。

enter image description here 我想我需要将其位置锚定在轴“ x”上并保持一定的偏移量,但是我看不到该怎么做。

1 个答案:

答案 0 :(得分:0)

找到了解决方法。设置刻度线,然后将刻度线颜色设置为白色。

xaxis3: {
            autotick: false,
            dtick: 86400000,
            showticklabels: true,
            overlaying: "x",
            tickformat: "%a",
            ticklen: 15,
            tickwidth: 0,
            tickcolor: "#FFF"
        },

产生:

enter image description here

肯定是更好的方法吗?