【问题标题】:Automatically join missing data gaps in Highcharts JS在 Highcharts JS 中自动加入缺失的数据间隙
【发布时间】:2013-04-12 14:06:09
【问题描述】:

我目前正在寻找在我的应用程序中实现Highcharts JS,使用月份作为 x 轴类别。

但是,我的数据中有缺口,希望图表能够自动连接这些缺口。

例如,如果我没有 3 月的任何数据,我希望 2 月和 4 月用一条直线连接。

使用 highcharts 演示,我编辑了数据以演示默认情况下当前发生的情况:

http://jsfiddle.net/kf26t/1/

data: [7.0, 10.0, null, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6]

如您所见,2 月和 4 月之间的分界线有所中断。

我考虑过从类别中删除没有数据的月份,但这会导致结果出现偏差,因为 2 月和 4 月之间的距离将与 4 月和 5 月相同,这不会给出准确的结果表示。

如果我要删除 4 个月,这种不准确的表述被夸大了:

http://jsfiddle.net/kf26t/2/

categories: ['Jan', 'Feb', 
                    'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']

我能想到的唯一解决方案是计算月份之间的平均值,但我不希望显示平均值。

Highchart JS 中是否有任何内置方法可以填补这些空白?如果没有,是否有更简洁的解决方案来解决我的建议?


或者,有没有一种方法可以根据值分隔 x 轴?所以如果没有三月,二月和四月就出现了2个月的距离。

当整数是 x 轴时,这也很有用。例如,如果我有“1、2、10”,我不希望这些均匀分布。

【问题讨论】:

  • 一般的东西有什么问题?如果 Highcharts 填补空白,那肯定是它会自动显示的值。我想也许你想要它没有悬停点?
  • @musefan 没错,它是生成的平均值,而不是输入的数据。因此,我不希望它成为“里程碑”。
  • @musefan 查看我的最新编辑。我宁愿根本不将三月显示为一个类别,而只是将类别分散得更远。
  • 我不认为不准确的表示是不准确的......我不明白更好的图表是什么样子:s
  • @amhed 假设这是多年来的燃料价格,你有 1970 年、1971 年和 2013 年的数据。如果它们都均匀分布,则线在 1970 年和 1970 年之间显示的度数1971 年无法与 1971 年至 2013 年相提并论。

标签: javascript highcharts missing-data


【解决方案1】:

我可能遗漏了一些东西,但根据您的示例和解释,您似乎正在寻找 connectNulls 属性:

http://api.highcharts.com/highcharts#plotOptions.series.connectNulls

【讨论】:

  • 不规则日期时间序列有什么选项吗?
  • 我不确定你的意思——你能说得更具体点吗?
【解决方案2】:

对于这种类型的行为,应该使用Highstocks JS 而不是 Highcharts JS。

data: [
       [Date.UTC(2013,  0, 1), 1],
       [Date.UTC(2013, 1, 1), 2 ],
       [Date.UTC(2013, 3,  1), 4],
       [Date.UTC(2013, 4,  1), 5 ],
       [Date.UTC(2013, 5, 1), 6 ],
       [Date.UTC(2013, 6, 1), 7],
       [Date.UTC(2013,  7,  1), 8],
       [Date.UTC(2013,  8,  1),9],
       [Date.UTC(2013, 9, 1), 10],
       [Date.UTC(2013, 10, 1), 11],
       [Date.UTC(2013, 11, 1), 12]
      ]

现场演示: http://jsfiddle.net/q2kSf/

【讨论】:

  • 这里 highstock 比 highcharts 有什么优势?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-09
  • 2015-07-01
  • 2020-04-12
  • 2021-11-12
  • 2017-07-29
  • 2023-03-10
相关资源
最近更新 更多