1

我有一个包含许多数据的图表,更准确地说是每天存储的大量数据(这对用户来说看起来不太好,标签太多)。

更准确地说,数据以这种方式存储在数据库中:日期(格式为 YYYY - MM - DD)- 数据。

我想做的是使用 x 轴标签(例如)进行几周的默认缩放(包含大量数据),但有一次用户放大它会自动更改为几天。

任何人都知道我该怎么做?

也许这是一个好的开始:

xAxis: {
    type: 'datetime',
    dateTimeLabelFormats: {
        day: '%e of %b'   
    }
},

series: [{
    data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4],
    pointStart: Date.UTC(2010, 0, 1),
    pointInterval: 24 * 3600 * 1000 // one day
}]

在这里找到:http: //jsfiddle.net/gh/get/jquery/1.7.2/highslide-software/highcharts.com/tree/master/samples/highcharts/xaxis/datetimelabelformats/

编辑

我想展示的是,例如,当有周“缩放”时的平均值,当用户放大(在天视图中)时,有准时值。仅使用一个系列(因为此图上有多个系列)。

4

1 回答 1

1

我认为你最好的选择是从 Highcharts 网站上的时间序列演示开始工作,因为它涵盖了时间序列数据和可缩放数据,而不会用太多标签使图表超载。

编辑:
针对提供的其他详细信息,我不认为 highcharts 旨在在放大/缩小时显示不同的数据。它只会按原样显示可用数据。

如果您希望能够在缩放时调整该数据的视图,我的建议是:

  • selection为事件添加一个监听器;
    • 创建一个新的临时系列,隐藏旧系列并显示新系列;
    • 通过重新计算值来更改现有系列
  • 对平均数据有一个单独的系列,并有一种在完整数据和平均数据之间切换的方法。

这不是您正在寻找的答案,但我不相信有任何其他方法可以完成您想要的。

于 2013-03-17T04:47:31.833 回答