【问题标题】:Graphing time series data w/flot and ignoring large block of times使用浮点数绘制时间序列数据并忽略大量时间
【发布时间】:2012-12-15 03:16:42
【问题描述】:

我正在用 Flot 绘制股票数据。如果我绘制一天,它工作正常。如果我在同一图表中绘制 2 天或更多天,则在第一天结束和第二天开始之间有一条很长的线。

正确地,Flot 没有看到任何数据(市场关闭),因此只是在新的一天开始时画了一条线。

如何让 Flot 忽略收市(美国东部标准时间下午 4 点)和开市(美国东部标准时间上午 9:30)之间的时间?

附图:

我的绘图数据是:

$(function () {
    $.plot($("#placeholder"),
[ { data: [[1355131782000000, "2.95"], [1355132082000000, "2.99"], [1355132382000000, "2.97"], [1355132682000000, "2.9699"], [1355132982000000, "2.955"], [1355133282000000, "2.92"], [1355133582000000, "2.91"], [1355133882000000, "2.95"], [1355134182000000, "2.94"], [1355134482000000, "2.935"], [1355134782000000, "2.92"], [1355135082000000, "2.92"], [1355135382000000, "2.91"], [1355135682000000, "2.9"], [1355135982000000, "2.8901"], [1355136282000000, "2.865"], [1355136582000000, "2.92"], [1355136882000000, "2.945"], [1355137182000000, "2.95"], [1355137482000000, "2.925"], [1355137782000000, "2.92"], [1355138082000000, "2.925"], [1355138382000000, "2.92"], [1355138682000000, "2.92"], [1355138982000000, "2.93"], [1355139282000000, "2.9201"], [1355139582000000, "2.93"], [1355139882000000, "2.925"], [1355140182000000, "2.9115"], [1355140482000000, "2.92"], [1355140782000000, "2.91"], [1355141082000000, "2.92"], [1355141382000000, "2.91"], [1355141682000000, "2.91"], [1355141982000000, "2.915"], [1355142282000000, "2.915"], [1355142582000000, "2.91"], [1355142882000000, "2.905"], [1355143182000000, "2.9"], [1355143482000000, "2.9"], [1355143782000000, "2.89"], [1355144382000000, "2.885"], [1355144682000000, "2.88"], [1355144982000000, "2.89"], [1355145282000000, "2.89"], [1355145582000000, "2.89"], [1355145882000000, "2.89"], [1355146182000000, "2.88"], [1355146482000000, "2.885"], [1355146782000000, "2.89"], [1355147082000000, "2.89"], [1355147382000000, "2.88"], [1355147682000000, "2.88"], [1355147982000000, "2.89"], [1355148282000000, "2.89"], [1355148582000000, "2.88"], [1355148882000000, "2.88"], [1355149182000000, "2.9"], [1355149482000000, "2.9"], [1355149782000000, "2.89"], [1355150382000000, "2.9"], [1355150682000000, "2.91"], [1355150982000000, "2.9"], [1355151282000000, "2.91"], [1355151582000000, "2.9001"], [1355151882000000, "2.905"], [1355152182000000, "2.9015"], [1355152482000000, "2.9"], [1355152782000000, "2.96"], [1355153082000000, "3.0"], [1355153382000000, "3.01"], [1355153682000000, "3.005"], [1355153982000000, "3.005"], [1355154282000000, "3.01"], [1355154582000000, "3.01"], [1355154882000000, "3.02"], [1355155182000000, "3.02"]] } ],
{ xaxes: [ { mode: 'time', 
             twelveHourClock: true,
             timeformat: "%H:%M%p"} ],
  yaxes: [  ] })
});

更新(每个答案)新图表:

这不是我想要的。我想基本上折叠市场收盘和开盘之间的图表。我不想看到差距太大...

【问题讨论】:

标签: jquery graph time-series data-visualization flot


【解决方案1】:

添加 x 轴值落在间隙内且 y 轴值为 null 的假数据点以创建不连续性。

有关详细信息,请参阅 API 文档的 Data Format 部分。

编辑:实际折叠轴以仅显示可用数据,不要使用时间模式。如果值不是单调增加,那么您并没有真正显示时间,而是应该根据可用数据手动指定 x 轴刻度数组。

【讨论】:

  • 好吧,这并没有按预期工作 - 我已经用新结果的图片更新了我的 OP。我在关闭时间和打开时间之间添加了两个带有空值的时间戳。查看新图表...
  • 好吧,我在想——我也尝试将它们绘制成两组数据,但这只是改变了颜色,呵呵。我会试试你的建议,应该可以的。
猜你喜欢
  • 2016-02-27
  • 1970-01-01
  • 2020-04-09
  • 2014-05-12
  • 2017-03-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多