为了生成接口wlan0的数据使用,我必须使用gnuplot创建一个shell脚本。以下是我尝试过的:
==>用于gnuplot:
set title "Data usage over the current hour"
unset multiplot
set xdata time
set style data lines
set term png
set timefmt '"%M:%S"'
set xrange ['"00:00"':'"59:59"']
set xlabel "Time"
set ylabel "Traffic"
set autoscale y
set output "datausage.png"
plot "monitor.dat" using 1:2 t "RX" w lines, "monitor.dat" using 1:3 t "TX" w lines ==>,这是我的外壳:
#!/bin/bash
interface=$1
mkdir -p /tmp/netiface
while true;
do
recus=`ifconfig $interface | awk -F":" 'NR == 8 { print $2}' |awk '{print $2}' | cut -d "(" -f 2`
transmis=`ifconfig $interface | awk -F":" 'NR == 8 { print $3}' |awk '{print $2}' | cut -d "(" -f 2`
date=`date +%M:%S`
echo -e "$date $recus $transmis">>/tmp/netiface/monitor.dat
sleep 1
done===> monitor.dat
08:18 823.6 121.4
08:19 823.6 121.4
08:20 823.6 121.4
08:21 823.6 121.4
08:22 823.7 121.5
08:23 824.3 121.5
08:24 824.6 121.5
08:25 824.6 121.5
08:26 824.6 121.5
08:27 824.6 121.5
08:28 824.6 121.5
08:29 824.6 121.5
08:30 824.6 121.5
08:31 824.6 121.5
08:32 824.6 121.5但是,当我执行所有这些时,我会得到以下结果:

如何更改脚本,以便正确绘制数据?
发布于 2015-05-22 16:10:59
你在控制台上试过吗?我收到了一个关于空x范围的警告。
你的xrange引起了问题。看上去有点时间问题。尝试设置set xrange [*:*],您将看到数据。对范围值的试验应该使您调整到正确的范围。
发布于 2015-06-02 09:20:58
只是不要用那么多的名言:
set timefmt "%M:%S"
set xrange ["00:00":"59:59"]奖励:使用以下方法可以使您的输出看起来更好:
set format x "%M:%S"
set xtics "15:00"

(我更改了示例文件中的最后一点,以获得比小行更多的内容。)
https://stackoverflow.com/questions/30399637
复制相似问题