¿Cómo trazar un gráfico a partir de valores de archivos de texto? El archivo de texto se ve a continuación:
location count1 count2
HZ 100 193
ES 514 289
FP 70 137
BH 31 187
Quiero trazar estos valores como un gráfico en el script de shell. En los valores del eje x de la columna de ubicación y los valores del eje y de la columna count1 y count2.
plot "/tmp/temp.txt"
falla conBad data on line 1 of file /tmp/temp.txt
. Creo que es posible que deba crear una versión del archivo con solo números, sin encabezados de fila / columna. Alternativamente, use algo como gnumeric.Respuestas:
Usando el mismo archivo de entrada (ex.tsv), y creando un script gnuplot para controlar mejor los detalles
y gnuploting los datos:
vemos el histograma correspondiente.
Para crear un archivo png (para cargar y mostrar en SO) agregue 2 líneas más:
fuente
Solución de trabajo para gnuplot v5.0:
Archivo de datos de entrada
loc.dat
:script gnuplot
locations.plt
:set title "Location data"
- título de la trama principalset xlabel "location"
- etiqueta de configuración parax
ejeset ylabel "count"
- etiqueta de configuración paray
ejeset grid
- Agregar cuadrícula a la trama(column(0)):2:xtic(1)
- rango de columna,(column(0))
- como la primera columna en el archivo de entrada tiene valores no numéricos, necesitamos imitar la primera columna numérica ya que gnuplot solo espera valores numéricos en ellaw l
- significa con líneas , para unir todos los puntos de datos con líneasLanzamiento interactivo:
Resultado procesado:
fuente
gnuplot> load "locations.plt"
, gnuplot lo requiere,load locations.plt
no funcionará y obtendrá "error interno: operador STRING aplicado a una variable indefinida o no STRING" si lo olvida.