【问题标题】:gnuplot graph with time fmt not working带有时间 fmt 的 gnuplot 图不起作用
【发布时间】:2015-12-11 16:41:39
【问题描述】:

我创建了一个记录各种系统资源的脚本,并将所有数据点用一条漂亮的平滑线绘制到 gnuplot 中。我在使用我的时间格式并正确绘制数据时遇到了 gnuplot 问题。下面是我的数据文件示例

我的时间格式 = %H%M%S

“等等等等” = 数百个额外的记录时间。

170554 3.0%
170556 2.7%
170558 2.6%
etc.
etc.
010218 2.1%
010218 2.3%

如果所有数据绘图的时间未超过 000000 标记,则 gnuplot 将正确绘制所有数据。一旦我的数据图超过了 000000 边界,gnuplot 就会以我的时间格式倒数,因此它会尝试绘制从 170554 - 010218 (未记录的数字)未记录的所有内容。 例子。 170552 160424 150720 120818。

我正在使用的 gnuplot 命令如下。

gnuplot -persist -e "set title 'Resource Monitor'; set timefmt '%H%M%S'; set xdata time; set xlabel 'TIME'; set ylabel 'PERCENT'; set yrange [0:101]' set xrange ['170554':'010218']" -e "plot 'log_file' using 1:2 title 'CPU' smooth Bezier"

所以我的问题是... 为什么 gnuplot 没有正确绘制我的图表(我希望它通过时间的方式),我该如何解决这个问题?谢谢。

【问题讨论】:

  • 您缺少set xdata time
  • 我更新了我的 gnuplot 命令,这有助于我在视觉上显示 TIME 部分,但它仍在尝试从第一次输入,倒退到最后一次输入(丢失我的所有数据点)。

标签: linux bash gnuplot


【解决方案1】:

来自文档

如果<ub> 低于<lb>,约束将被关闭并满 将发生自动缩放。

要解决此问题,您需要使用额外的“日期”信息来补充您的时间数据,或者找到其他方法来确保以后的时间永远不会“低于”较早的时间。

【讨论】:

  • 我已将所有文件/gnuplot 的时间格式更改为 %d%H%M%S。我会在晚上再试一次,看看结果如何。由于它是周末(几乎),如果这可行,我将在周一或周二早上“接受你的回答”。谢谢!
  • 非常好。请注意,您将在月份范围内遇到类似的问题。如果您补充月份数据,您仍然会在年份边界(2016 年即将到来)等方面遇到它。相应地设计/操作......
  • 非常感谢。我计划在整个脚本中对我的时间格式进行全面修改,以适应这些变化。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-07
  • 1970-01-01
  • 2020-02-28
  • 1970-01-01
  • 2017-06-22
相关资源
最近更新 更多