我正在使用HightCharts创建一些可视化效果。仅针对特定年份的思想系列,我会自动在条形的实际值和结果目标之间划清界限。

我以这种方式画线:

{
      dashStyle: 'dash',
      lineWidth: 2,
      shadow: false,
      zIndex: 2,
      color: '#000e3e',
      data: [[0, 5], [3,3]],
        name: 'Line for Project 2 - Results'

    }


在数据部分,我指定从第一年的第0列和结果的第3列开始。

问题是,在HightCharts中,当一年中有多个值时,该行不是从条的顶部开始,而是从中间开始。

[![在此处输入图片描述] [1]] [1]

有什么方法可以从栏的顶部开始绘制线条?

这是JS FIDDLE



Highcharts.chart('container', {
    title: {
        text: 'Combination chart'
    },
    xAxis: {
        categories: ['2014', '2015', '2016', 'Results']
    },
    series: [{
        type: 'column',
        name: 'Project 1',
        data: [10, 4, 1]
    }, {
        type: 'column',
        name: 'Project 2',
        data: [5, 4, 5]
    }, {
        type: 'column',
        name: 'Project 3',
        data: [2,8, 3]
    },{
      dashStyle: 'dash',
      lineWidth: 2,
      shadow: false,
      zIndex: 2,
      color: '#000e3e',
      data: [[0, 10], [3,5]],
    	name: 'Line for Project 1 - Results'

    },{
      dashStyle: 'dash',
      lineWidth: 2,
      shadow: false,
      zIndex: 2,
      color: '#000e3e',
      data: [[0, 5], [3,3]],
    	name: 'Line for Project 2 - Results'

    },{
      dashStyle: 'dash',
      lineWidth: 2,
      shadow: false,
      zIndex: 2,
      color: '#000e3e',
      data: [[0, 2], [3,0]],
    	name: 'Line for Project 3 - Results'

    }]
});

<script src="https://code.highcharts.com/highcharts.js"></script>
<script src="https://code.highcharts.com/modules/series-label.js"></script>
<script src="https://code.highcharts.com/modules/exporting.js"></script>

<div id="container" style="min-width: 310px; height: 400px; margin: 0 auto"></div>

最佳答案

实现所需效果的最简单方法是将线系列数据的x值设置为浮点数值,而不是整数,例如等于0.2或-0.2。请看下面的代码:

{
  dashStyle: 'dash',
  lineWidth: 2,
  shadow: false,
  zIndex: 2,
  color: '#000e3e',
  data: [[-0.2, 10], [3,5]],
    name: 'Line for Project 1 - Results'
}


我准备了JSFiddle example来向您展示它的外观。

最好的祝福!

关于javascript - Highcharts 行显示不正确,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47710951/

10-11 13:52