2017-06-17 112 views
0

如何從yAxis中刪除某些值?Highcharts:從y軸隱藏/刪除值(在一定範圍內)

我的圖表是一個列軸(https://www.highcharts.com/demo/columnrange),在x軸上有幾天(實際上是y軸,旋轉),我不想在某些日子顯示值。

更一般而言,我想隱藏域中的一些值,即不連續的域。

實施例:

Highcharts.chart('container', { 
    chart: { type: 'columnrange', inverted: true }, 
    xAxis: { categories: [ 'FirstTask' ] }, 
    yAxis: { 
     type: 'datetime', 
     tickInterval: 24 * 36e5 
    }, 
    plotOptions: { 
     columnrange: { 
      dataLabels: { 
       enabled: true, 
       formatter: function() { return Highcharts.dateFormat('%e.%b', this.y); } 
      } 
     } 
    }, 
    series: [{ data: [1497718538701, 1498150538701] }], 
}); 

此代碼生成從6月17日與水平杆和天圖表到6月22日X軸(Y,旋轉)。

我想刪除天19和20,即所有的點在間隔

[1497891338701, 1497977738701] 

這可能嗎?

+0

請編輯標題確定它的相關問題進行highcharts,並提供你試過什麼的例子。 –

回答

1

您可以使用損壞的軸模塊在軸上設置breaks

yAxis: { 
    type: 'datetime', 
    tickInterval: 24 * 36e5, 
    breaks: [{ 
    from: Date.UTC(2017, 5, 19), 
    to: Date.UTC(2017, 5, 20), 
    breakSize: 0 
    }], 

看來,在你的情況下,一些蜱是重疊的,但也可能是固定axis.labels.formatter - 您可以檢查是否值突破之外。

labels: { 
    formatter: function() { 
     const hide = Date.UTC(2017, 5, 19) <= this.value && this.value < Date.UTC(2017, 5, 20) 

     return !hide ? this.axis.defaultLabelFormatter.call(this) : null 
    } 

例如:http://jsfiddle.net/qhrd9wnw/

+0

哇,真**完美**解決方案! 謝謝你morganfree。 – Andrea