GnuPlot es una herramienta disponible para linux, permite generar gráficos en formato eps (vectoriales) muy útiles para informes científicos.
Para instalar, hacemos en la consola: sudo apt-get install gnuplot
Para usarlo, generamos un script con las configuraciones de gnuplot y un archivo con los datos a plotear, por ejemplo, generamos un archivo con el nombre "gnu_script" (con cualquier editor de texto, no precisa extensión) con el contenido:
set terminal postscript eps enhanced 20
set encoding iso_8859_1
set output 'pot_-16_outdoor.eps'
set format x "%1.2f"
set xrange [0.20:2.05]
#set xtics 0.5
#set grid xtics
set xlabel 'Dist{\342}ncia (m)'
#set xlabel 'Imprecis{\343}o (% da dist{\342}ncia)'
set format y "%1.2f"
set yrange [-42:-23]
set grid ytics
set ytics 2.5
set ylabel 'RSSI (dBm)'
#set ylabel 'Erro de Localiza{\347}{\343}o (m)'
#set key left top
plot 0 with boxes notitle,\
'pot_-16_outdoor.dat' u 1:2:3 with errorlines pt 01 ps 1 lt 1 lw 3 lc rgb 'blue' title ''
#'pot_-16dbm.dat' u 1:2:3 with errorlines pt 05 ps 2 lt 1 lw 3 title 'Pot. -16dBm'
y generamos un archivo "pot_-16_outdoor.dat" con los datos a ser graficados:
# experimento con potencia de señal -16dbm
#columnas: distancia, media de potencia, intervalo de confianza
0.25 -25 0.09
0.5 -31.5 0.19
0.75 -34 0.14
1 -36 0.11
1.25 -40.5 0.11
1.5 -40.5 0.21
1.75 -40.5 0.17
2 -41.5 0.10
abrimos una consola, nos situamos en el directorio donde están los archivos y ejecutamos: $gnuplot gnu_sript
en el mismo directorio aparece un archivo con el nombre "pot_-16_outdoor.eps" que es el gráfico siguiente:
Ahora un ejemplo de gráfico de barras, en el script colocamos:
set output 'erro_rpe_graph.eps'
set encoding iso_8859_1
set terminal postscript color eps enhanced 20
set boxwidth 0.9 absolute #seta o gnuplot para plotar grafico de barras e diz qual deve ser a largura de cada barra
set style fill solid 0.85 border -1 #diz como deve ser a borda de cada barra
set style data histogram #seta que o grafico a ser plotado sera um grafico de barras
set style histogram cluster gap 1 #diz o quanto um grupo de barras estara distante dos grupos adjacentes
set yrange [0:0.8] #seta a altura do eixo y
set format y "%1.2f" #quantidade de decimales
set xrange [-0.6:2.5] #seta a largura do eixo x
set xtics("Cen{\341}rio 1" -0.01, "Cen{\341}rio 2" 1, "Cen{\341}rio 3" 2) #coloca uma string numa posição do eixo x, pode ser qualquer numero real do real do eixo x
set ylabel "Erro de Localiza{\347}{\343}o (m)" #titulo para o eixo vertical
#set xlabel "Cen{\341}rios RPE" #titulo para o eixo horizontal
#set style line 2 linecolor rgb 'green'
#set style line 1 linecolor rgb 'blue'
plot "error_rpe.dat" using 2 lc rgb "#040b1dff" notitle, "media_rpe.dat" using ($1):($2) with lines lt 5 lc rgb "blue" lw 2 title 'Erro de Localiza{\347}{\343}o M{\351}dio' #plota dois graficos de barras os valores para plotagem das barras estão no arquivo dados.t
Nota: cuidado con los comentarios que se pasaron para la liña de abajo.
En el scrip anterior el archico de salida es una gráfico con el nombre "erro_rpe_graph.eps" y el archivo de entrada en este caso son dos "error_rpe.dat" y "media_rpe.dat" cuyos contenidos son:
#error_rpe.dat
#cenarios erro media
1 0.12 0.34
2 0.23 0.34
3 0.69 0.34
y
#media_rpe.dat
-0.6 0.34
0 0.34
1 0.34
2.5 0.34
Resultado:
No comments:
Post a Comment