Time 绘制从晚上11点到上午9点的时间数据,返回
我有一个文件如下所示:Time 绘制从晚上11点到上午9点的时间数据,返回,time,gnuplot,Time,Gnuplot,我有一个文件如下所示: fmp@lila asc-47$ head -n 2 imp 23:22:37 23.3769 240.800 581.300 1.000 1.000 -2.839 -0.360 5.114 2.076 23:23:07 23.3853 240.700 580.300 1.000 1.000 -2.838 -0.358 5.114 2.079 fmp@lila
fmp@lila asc-47$ head -n 2 imp
23:22:37 23.3769 240.800 581.300 1.000 1.000 -2.839 -0.360 5.114 2.076
23:23:07 23.3853 240.700 580.300 1.000 1.000 -2.838 -0.358 5.114 2.079
fmp@lila asc-47$ tail -n 2 imp
09:22:23 9.3731 257.300 636.900 1.000 1.000 -2.867 -0.358 5.103 2.082
09:22:53 9.3814 257.200 635.800 1.000 1.000 -2.867 -0.358 5.104 2.082
我想画第3列和第1列
我的gnuplot文件如下所示:
#!/bin/gnuplot
#
set terminal svg size 1400,1048 enhanced fname 'Verdana' fsize 12
set output 'curr-imp.svg'
unset key
set xlabel 'Tiempo (h)'
set ylabel 'Corriente (mA)'
set xdata time
set timefmt "%H:%M:%S"
set format x "%H"
set style line 1 lc rgb '#000000' pt 6 ps 1 lt 1 lw 2 # --- black with empty circles
set style line 11 lc rgb '#808080' lt 1
set border 3 back ls 11
set tics nomirror
set style line 12 lc rgb '#808080' lt 0 lw 1
set grid back ls 12
plot 'imp' u 1:3 ls 1 w lp
这给了我几乎想要的输出。
问题是线路会倒回去,因为时间是从晚上23点到早上9点。我在想也许我应该把日期和时间放在一起。还是有别的办法解决这个问题?非常感谢您抽出时间为了清楚起见,我将在最后展示我是如何做的。(提供的链接不完全是我的情况,因为我在不同的文件中有不同日期的数据。) 首先,使用vim将日期1添加到文件1,将日期2添加到文件2(
:%s/^/27-06-14/g
或:%s/^/28-06-14/g
,在墨西哥,我们写的是日-月-年)
然后,将文件1和文件2与cat合并。
之后,只需更改行:
设置时间“%d-%m-%y%H:%m:%S”
设置格式x“%H%p”
....
绘图“imp”u 1:4 ls 1 w lp
你完成了。:)
请参阅以获取相同的问题。我投票赞成复制。不过,我的建议是,如果您可以控制数据输出,请写一个时间戳:)好吧,当您写问题时,它是完全重复的,您没有提到您每天有一个数据文件。使用gnuplot,您还可以动态添加此信息,如
绘图“
fmp@lila asc-47$ head -n 1 imp-27
27-06-14 23:22:37 23.3769 240.800 581.300 1.000 1.000 -2.839 -0.360 5.114 2.076
fmp@lila asc-47$ tail -n 1 imp-28
28-06-14 09:22:53 9.3814 257.200 635.800 1.000 1.000 -2.867 -0.358 5.104 2.082