Highcharts 当第一个点为空时,导航器在1970年显示

Highcharts 当第一个点为空时,导航器在1970年显示,highcharts,highstock,Highcharts,Highstock,我已经从客户端异步加载了数据。有时会收到空时间和值对。如果发生这种情况,导航器将从1970年开始显示。 我已尝试将初始点设置为navigator系列中的第一个时间戳,但问题仍然存在,因为显示的系列中存在空值 您是否可以提出解决方案或解决方法 这是我的代码和: 为什么不过滤掉空/空对?如果数据没有意义,为什么允许将其发送到图表?为什么不过滤空/空对?如果数据没有意义,为什么允许将其发送到图表?Highcharts中不能有空x值 如果该点没有y数据,请将数据指定为(ie)[Date.UTC(1990

我已经从客户端异步加载了数据。有时会收到空时间和值对。如果发生这种情况,导航器将从1970年开始显示。 我已尝试将初始点设置为navigator系列中的第一个时间戳,但问题仍然存在,因为显示的系列中存在空值

您是否可以提出解决方案或解决方法

这是我的代码和:


为什么不过滤掉空/空对?如果数据没有意义,为什么允许将其发送到图表?

为什么不过滤空/空对?如果数据没有意义,为什么允许将其发送到图表?

Highcharts中不能有空x值

如果该点没有y数据,请将数据指定为(ie)
[Date.UTC(1990,9,27),null]


空x和空y没有任何意义,因为您不知道空值(即问题)何时发生。

在Highcharts中不能有空x值

如果该点没有y数据,请将数据指定为(ie)
[Date.UTC(1990,9,27),null]


空x和空y没有任何意义,因为您不知道空值(即问题)是何时发生的。

您也可以组合以下几行:

 chart.addSeries({
            name: 'USD to EUR'
        });
    chart.series[0].setData(data);
进入

您可以使用pointStart,但最好去掉空值


您也可以将这些行组合起来:

 chart.addSeries({
            name: 'USD to EUR'
        });
    chart.series[0].setData(data);
进入

您可以使用pointStart,但最好去掉空值


在我们的案例中,没有任何数据是有意义的,因为这意味着现场出了问题。Highcharts在其他情况下处理得很好,在没有数据的图表中显示了一个中断,我们可以为用户注释它,这样他们可以进行额外的调查。好的,我可以看到。如果你只为导航器制作第二个系列,但不包括空点,怎么样?接下来,这听起来是一个我没有想到的好主意。我们可以为所有要显示的序列计算出通用的时基,并创建一个时间序列来在导航器上表示它。我正在考虑的另一个选择是允许用户自己指定一个navigator系列,我们可以对其进行处理以删除所有空值。在我们的情况下,没有任何数据是有意义的,因为这意味着现场出了问题。Highcharts在其他情况下处理得很好,在没有数据的图表中显示了一个中断,我们可以为用户注释它,这样他们可以进行额外的调查。好的,我可以看到。如果你只为导航器制作第二个系列,但不包括空点,怎么样?接下来,这听起来是一个我没有想到的好主意。我们可以为所有要显示的序列计算出通用的时基,并创建一个时间序列来在导航器上表示它。我正在考虑的另一个选项是允许用户自己指定一个navigator系列,我们可以对其进行处理以删除所有空值。pointStart是一个有趣的技巧。我可以扫描第一个非空datetime并设置该值。出于上述原因,消除空值是理想的,但不是一个选项。pointStart是一个有趣的技巧。我可以扫描第一个非空datetime并设置该值。出于上述原因,消除空值是理想的,但不是一种选择。诚然,空时间戳本身几乎没有信息。但是,当它位于一系列时间不断增加的数据点中时,我们可以将其隔离到时间范围内的问题。我们现在使用非连接的空值很好:我认为您没有抓住我的重点。connectNulls应用于null y值。空y值是可以的。空的x值是有用的-如果不指定x值,则数据中没有可连接或跳过的内容。你的时间序列不知道该点的时间,因此不能跳过它,或包含它。。。通过发送[null,null],您实际上没有告诉图表该数据点属于何处。从而导致错误。当你给出的日期为空时,图表怎么可能知道何时启动日期导航器呢?啊,我明白你的意思,同意。至少,服务器需要返回值的时间戳,否则它会在x轴上混合序号和日期时间图,这有点疯狂。我认为这是为我的例子工作的时候,在中间的一系列,但主要是运气,而不是设计。事实证明,我看到了同样的错误时,所有系列开始与空Y,但有效的X值。我将尝试创建一个提琴来查看发生了什么。没错,空时间戳本身几乎没有信息。但是,当它位于一系列时间不断增加的数据点中时,我们可以将其隔离到时间范围内的问题。我们现在使用非连接的空值很好:我认为您没有抓住我的重点。connectNulls应用于null y值。空y值是可以的。空的x值是有用的-如果不指定x值,则数据中没有可连接或跳过的内容。你的时间序列不知道该点的时间,因此不能跳过它,或包含它。。。通过发送[null,null],您实际上没有告诉图表该数据点属于何处。从而导致错误。当你给出的日期为空时,图表怎么可能知道何时启动日期导航器呢?啊,我明白你的意思,同意。至少,服务器需要返回值的时间戳,否则它会在x轴上混合序号和日期时间图,这有点疯狂。我认为这是为我的例子工作的时候,在中间的一系列,但主要是运气,而不是设计。事实证明,我看到了同样的错误时,所有系列开始与空Y,但有效的X值。我会试着做一把小提琴来看看发生了什么。
 chart.addSeries({
    name: 'USD to EUR',
    data:data,
    pointStart: Date.UTC(1990, 9, 27)
});