我正在按照这个例子来选择 plotly 中的感兴趣区域:
http://codepen.io/etpinard/pen/zBWRZb
<head>
<script src="https://cdn.plot.ly/plotly-latest.min.js"></script>
</head>
<body>
<div id="graph"></div>
</body>
<script>
var gd = document.getElementById('graph');
var d3 = Plotly.d3;
var formatter = d3.format('.2f');
Plotly.plot(gd, [{
mode: 'lines',
x: Array.apply(null, Array(100)).map(() => Math.random()),
y: Array.apply(null, Array(100)).map(() => Math.random()),
}], {
dragmode: 'select'
});
gd.on('plotly_selected', (eventData) => {
var xRange = eventData.range.x;
var yRange = eventData.range.y;
Plotly.relayout('graph', 'title',
`x range: [${xRange.map(formatter).join(', ')}]<br>
y range: [${yRange.map(formatter).join(', ')}]`
);
});
</script>
但是,当我将模式值更改为“线”而不是“标记”时,绘图中不存在框选择按钮(通常应位于平移按钮旁边)。我仍然可以在页面呈现后立即进行框选,但如果我选择缩放工具,则无法返回框选。
最佳答案
我发现可以明确指定应显示哪些按钮:
Plotly.plot(gd,
[
{
type: "scatter",
x: time,
y: current,
}
],
{},
{modeBarButtons:
[
['zoom2d'],
['zoomIn2d'],
['zoomOut2d'],
['autoScale2d'],
['select2d'],
['toImage']
]
}
);
无论绘图类型如何,这似乎都会强制显示这些按钮。
关于javascript - 如何强制 Box Select 工具显示在绘图中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44077752/