¿Existe una buena herramienta de trazado / gráfico / trazado de UNIX en la línea de comandos? Estoy buscando algo que trazará puntos xy en un gráfico ASCII.
Solo para aclarar, estoy buscando algo que genere un gráfico en ASCII (como el estilo ascii-art), para poder usarlo en una sesión de shell interactiva sin necesidad de X.
unix
charts
graph
matplotlib
bajafresh4life
fuente
fuente
Respuestas:
Prueba gnuplot . Tiene posibilidades gráficas muy poderosas.
Puede salir a su terminal de la siguiente manera:
fuente
options are feed 79 24'
mensaje? ¿Eso es alto y ancho? ¿Puedes ampliar tu ejemplo para establecerlos?Si bien
gnuplot
es poderoso, también es realmente irritante cuando solo quieres canalizar un montón de puntos y obtener un gráfico.Afortunadamente, alguien creó eplot (trama fácil), que maneja todas las tonterías por ti.
No parece tener una opción para forzar gráficos terminales; Lo parcheé así:
Un ejemplo de uso:
fuente
Otra opción que acabo de encontrar es bashplotlib . Aquí hay un ejemplo que se ejecuta en (aproximadamente) los mismos datos que mi ejemplo de eplot :
Ajustar los contenedores ayuda un poco a la resolución:
fuente
Las gráficas en una sola línea son realmente simples y pueden ayudar a ver patrones de altibajos.
Ver también pysparklines .
(¿Alguien sabe de líneas inclinadas unicode, que podrían encajar juntas para hacer líneas, no barras, tramas?)
fuente
feedgnuplot es otro front-end para gnuplot, que maneja las tuberías en los datos.
fuente
eplot
sugerido en otra respuesta?Ver también: asciichart (implementado en Node.js, Python, Java, Go y Haskell)
fuente
gnuplot es la respuesta definitiva a su pregunta.
Personalmente, también soy un gran admirador de la API de gráficos de Google , a la que se puede acceder desde la línea de comandos con la ayuda de wget (o curl) para descargar un archivo png (y ver con xview o algo similar). Me gusta esta opción porque encuentro que los gráficos son un poco más bonitos (es decir, mejor antialiasing).
fuente
Debe usar gnuplot y asegúrese de emitir el comando "set term dumb" después de iniciar. También puede dar un recuento de filas y columnas. Aquí está la salida de gnuplot si emite "set term dumb 64 10" y luego "plot sin (x)":
Se ve mejor a 79x24 (no use la columna 80 en una pantalla de 80x24: algunas implementaciones de maldiciones no siempre se comportan bien alrededor de la última columna).
Estoy usando gnuplot v4, pero esto debería funcionar en versiones ligeramente más antiguas o más nuevas.
fuente
Otra alternativa más simple / más ligera a gnuplot es ervy , una herramienta de gráficos de terminales basada en NodeJS.
Tipos admitidos: dispersión (puntos XY), barra, pastel, bala, rosquilla y calibre.
Se pueden encontrar ejemplos de uso con varias opciones en los proyectos de repositorio de GitHub
fuente
Verifique el paquete de texto que permite graficar datos directamente en la terminal usando python3. Es muy intuitivo ya que su uso es muy similar al paquete matplotlib .
Aquí hay un ejemplo básico:
Puede instalarlo con el siguiente comando:
En cuanto a matplotlib, las funciones principales son dispersión (para puntos individuales), trazado (para puntos unidos por líneas) y espectáculo (para imprimir realmente el trazado en el terminal). Es fácil especificar las dimensiones de la trama, los estilos de punto y línea y lo que sea para mostrar los ejes, las marcas numéricas y las ecuaciones finales, que se utilizan para convertir las coordenadas trazadas a los valores reales originales.
Aquí está el código para producir la trama que se muestra arriba:
La opción
clear=True
dentroshow
se usa para borrar el terminal antes de trazar: esto es útil, por ejemplo, al trazar un flujo continuo de datos. Aquí se muestra un ejemplo de trazado de un flujo continuo de datos:La descripción del paquete proporciona más información sobre cómo personalizar la trama. El paquete ha sido probado en Ubuntu 16 donde funciona perfectamente. Los posibles desarrollos futuros (previa solicitud) podrían incluir la extensión a python2 y a otras interfaces gráficas (por ejemplo, júpiter). Avíseme si tiene algún problema para usarlo. Gracias.
Espero que esto responda a tu problema.
fuente
Además, la chispa es un pequeño gráfico de barras agradable en su caparazón.
fuente
Aquí está mi parche para eplot que agrega una opción -T para salida de terminal:
Con esto, puede ejecutarlo
eplot -T
para obtener un resultado de gráficos ASCII en lugar de una ventana gnuplot.fuente
-d