|
|
发表于 2026-2-24 20:24:57
|
显示全部楼层
要在 Plotly.js 折线图上显示数值并调整文字位置,可以使用以下方法:
1. 显示数据点的值
在 trace 配置中添加 text 和 mode 参数:
- const trace = {
- x: [1, 2, 3, 4],
- y: [10, 15, 13, 17],
- type: 'scatter',
- mode: 'lines+markers+text', // 添加text模式
- text: [10, 15, 13, 17], // 显示的数值
- textposition: 'top center', // 文字位置
- textfont: {
- size: 12
- }
- };
复制代码
2. 调整文字位置的常用选项
textposition 参数可以设置以下值:
o 'top left' / 'top center' / 'top right'
o 'middle left' / 'middle center' / 'middle right'
o 'bottom left' / 'bottom center' / 'bottom right'
o 'outside'(标记点外部)
3. 完整示例
- // 数据
- const data = [{
- x: ['一月', '二月', '三月', '四月'],
- y: [30, 45, 28, 50],
- type: 'scatter',
- mode: 'lines+markers+text',
- text: ['30', '45', '28', '50'],
- textposition: 'top center',
- textfont: {
- size: 14,
- color: 'black'
- },
- line: {
- color: 'blue',
- width: 2
- },
- marker: {
- size: 8
- }
- }];
- // 布局配置
- const layout = {
- title: '月度销售额',
- xaxis: { title: '月份' },
- yaxis: { title: '销售额(万元)' },
- showlegend: false
- };
- // 绘制图表
- Plotly.newPlot('myDiv', data, layout);
复制代码
4. 微调文字位置
如果需要更精确的控制,可以使用 textposition: 'outside' 并结合偏移量:
- textposition: 'outside',
- textfont: { size: 12 },
- insidetextanchor: 'middle', // 文字在标记内的锚点
- textangle: 0 // 文字旋转角度
复制代码
5. 注意事项
o 确保 mode 包含 text 才能显示数值
o 如果数据点密集,可以使用 textposition: 'top center' 避免重叠
o 可以通过 textfont 调整文字大小和颜色
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |
|