繁体   English   中英

如何使用Highcharts将x轴标签沿y = 0线放置?

[英]How do you position the x-axis labels along the line y=0 using Highcharts?

我正在尝试移动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/

crossing并不是Highcharts的即开即用功能。

根据我的发现,看来您想要的是“跨特定值” Highcharts插件,该插件位于: http : //www.highcharts.com/plugin-registry/single/6/Crossing-Specific -值

更新(2016年7月5日):要解决有关小提琴的意见,您需要在引入Highcharts库后显式添加“ Crossing-Specific-Value”插件(请参见下面的第三行):

<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)使用演示作为默认示例,插件似乎将您的标签放在轴线上方。 我已经看到在行下方准备好标签的实例,因此我执行了以下操作:

  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表示该线将显示在普通网格线的顶部。 外观如下:

在此处输入图片说明

如果这能更好地回答您的问题,请告诉我。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM