Highcharts折线图当同一X轴具有多个点时,所有点均消失

时间:2019-07-07 15:13:45

标签: highcharts angular7 angular2-highcharts

我正在使用角度为7的angular-highcharts。当我对xAxis使用type:“ category”时,如下所示:

xAxis: {
  title: {
    text: 'myCustomDates'
  },
  type: 'category',
  categories: ["1398/03/01", "1398/03/02", ...],
}


and data in the series looks like this:
data: [
    { name: "1398/03/02", color: "yellow", y: 2.3 },
    { name: "1398/03/03", color: "red", y: 2.9 },
    { name: "1398/03/04", color: "green", y: 5 },
    { name: "1398/03/04", color: "green", y: 7 },
    { name: "1398/03/15", color: "red", y: 3.5 },
    { name: "1398/03/15", color: "yellow", y: 2.5 },
     ...
   ],

它的工作原理如您在下图中所看到的: enter image description here

但是当有多个具有相同xAxis的点(在我的情况下为波斯日期)时,它可以工作,但隐藏所有点,并且当我将鼠标悬停在其上时仍显示一个点,但是只有相同点的点xAxis。

enter image description here

enter image description here

我希望有任意数量的点具有相同的X轴,并且所有点都如第一幅图像所示。为什么将它们隐藏起来,我该如何解决?

2 个答案:

答案 0 :(得分:1)

您必须在系列中添加以下内容:

findNearestPointBy:'xy'

如果数据具有重复的x值,则必须将其设置为“ xy”以允许将鼠标悬停在所有点上。

更多信息: Documentation findNearestPointBy

答案 1 :(得分:1)

在Highcharts API中,我们可以阅读:

  

enabledThreshold:数字

     

在未定义点标记的情况下,隐藏点标记之前应具有的密度阈值。数字表示该系列中两个最接近点之间的水平距离,以marker.radius的倍数表示。 (...)

     

默认为2。

因此,您可以减小enabledThreshold的值或将enabled属性设置为true

plotOptions: {
  series: {
    findNearestPointBy: 'xy' // To make a tooltip works correctly.
  },
},
series: [{
    marker: {
        enabledThreshold: 0,
        // enabled: true
    },
    data: [...]
}]

实时演示: http://jsfiddle.net/BlackLabel/2xguwtfn/

API参考: https://api.highcharts.com/highcharts/series.line.marker.enabledThreshold