如何绘制命令的输出

如何绘制命令的输出

如何使用 GNUPlot 绘制该命令行的输出?图表脚本应该是什么样子?

我想要一个直方图。

wget -O - -o /dev/null http://www.stackoverflow.com/ |
cat | cat | sed "s/</\n</g" |
grep '<\/\{0,1\}[a-zA-Z][a-zA-Z\:\._\-]\{0,\}' |
cut -f 2 -d"<" | cut -f 1 -d">" | cut -f 1 -d" " |
sed "s/\//\\n/g" |
sort | uniq -c |
tail -n +2 |
cut -c5-

答案1

这应该可以帮助你。将数据写入文件(更改cut -c5-为,cut -c4-因为它删除了第一位数字):

wget -O - -o /dev/null http://www.stackoverflow.com/ | cat | sed "s/</\n</g" | grep '<\/\{0,1\}[a-zA-Z][a-zA-Z\:\._\-]\{0,\}' | cut -f 2 -d"<" | cut -f 1 -d">" | cut -f 1 -d" " | sed "s/\//\\n/g" | sort | uniq -c | tail -n +2 | cut -c4- > mydata.txt

创建myplot.dem(这里添加了一些自定义初始化,根据需要更改它):

set style data histogram
set style fill solid border -1
set log y
set boxwidth 0.9
set term png
set tics out nomirror
set xtics rotate by -45
set output "histogram.png"
plot "mydata.txt" using 1:xticlabels(2)

最后:

gnuplot myplot.dem

在当前目录中创建绘图“histogram.png”。

相关内容