我正在尝试移动x轴标签,使它们沿x = 0行显示。刻度不断变化,因此我不想使用像素设置位置,因为y = 0可能不在每个绘图的相同位置。
我尝试在这个网站上查找这个问题,有人建议使用“crossing:0”,如下所示,但这不起作用。
xAxis: {
min: -20,
max: 20,
tickInterval: 1,
gridLineWidth: 1,
endOnTick: false,
crossing:0,
title: {
text: 'some value',
},
如果有人能帮我解决这个问题,我将不胜感激。
这是我的JsFiddle:http://jsfiddle.net/z7eyv/35/
答案 0 :(得分:3)
crossing
不是Highcharts的开箱即用功能。
根据我能找到的东西,你想要的似乎是"交叉特定价值" Highcharts插件,位于:http://www.highcharts.com/plugin-registry/single/6/Crossing-Specific-Values
更新(2016年7月5日):要解决有关您的小提琴的评论,您需要明确添加"交叉特定值"在你进入Highcharts图书馆之后的插件(见下面的第三行):
<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="http://code.highcharts.com/modules/exporting.js"></script>
<script src="https://rawgithub.com/highslide-software/crossing-specific-value/master/crossing-specific-value.js"></script>
现在,将crossing
变量添加到x轴将显示演示中的标签。
我对你的小提琴进行了一些调整(见http://jsfiddle.net/brightmatrix/z7eyv/38/),以便更好地适应你的要求。
1)使用demo作为默认设置,似乎插件会将标签放在轴线上方。我已经看到标签更好地准备 线的情况,所以我做了以下事情:
xAxis: {
crossing: 0,
opposite: true,
min: -20,
max: 20,
tickInterval: 1,
gridLineWidth: 1,
endOnTick: false,
title: { text: '' },
labels: { y: 15 } // pushes the labels down below the crossing line
},
2)然后,我按如下方式调整y轴的绘图线:
yAxis: {
min: -20,
max: 20,
tickInterval: 1,
endOnTick: false,
title: { text: 'some value' },
plotLines: [{
value: 0.1,
width: 1,
color: 'black',
zIndex: 10 }] // moves the plot line above the axis gridline
},
zIndex
值为10表示该行将显示在普通网格线的顶部。以下是它的外观:
如果能更好地回答你的问题,请告诉我。