Como plotar a saída de um comando

2

Como posso plotar a saída desta linha de comando com o GNUPlot? Como deve ser o script do diagrama?

Eu quero um histograma.

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-
    
por Robert Sundström 20.12.2011 / 00:46

1 resposta

5

Isso deve ajudá-lo. Gravar dados no arquivo (alterou cut -c5- para cut -c4- porque estava excluindo o primeiro dígito):

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

Crie myplot.dem (alguma inicialização personalizada adicionada aqui, altere-a como quiser):

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)

e finalmente:

gnuplot myplot.dem

cria seu enredo "histogram.png" no diretório atual.

    
por 20.12.2011 / 02:55