我有一个timemode图表,上面有时间戳x轴。该数据集长度为20秒,绘图。ly在X轴上每2秒自动设置一个tick标签,这很好。
但是,X轴网格线自动设置为tick的位置。我想每秒使用修复Grildline,独立于X轴时间戳/tick。
可能吗?
据我所知,您不能直接这样做,但是您可以通过shapes
添加网格。
var data = {
x: [],
y: [],
type: 'scatter'
};
var lines = [];
//get a random time series
var startTime = new Date().getTime();
for (var i = 0; i < 20; i += 1) {
data.x.push(startTime + i * 1000);
data.y.push(i % 5 * Math.random())
}
//create a line every 1000 msecs
for (i = Math.min(...data.x); i < Math.max(...data.x); i += 1000) {
lines.push({type: 'line',
xref: 'x0',
x0: i,
x1: i,
y0: Math.min(...data.y),
y1: Math.max(...data.y),
layer: 'below',
line: {color: 'gray'}
}
);
}
var layout = {xaxis: {type: 'date',
dtick: 2000,
showgrid: false
},
yaxis: {showgrid: false},
shapes: lines
};
Plotly.newPlot('myDiv', [data], layout);
<script src="https://cdn.plot.ly/plotly-latest.min.js"></script>
<div id="myDiv"></div>