来自stdin的现场情节

问题描述 投票:4回答:4

我有一个应用程序,它将数字打印到stdout。是否有一种简单的方法可以使用任何命令行绘图工具(gnuplot)来生成图像的实时图?

live plot
4个回答
2
投票

您可以将数字重定向到文件,并使用gnuplot的重读命令或在绘图窗口中手动按e定期读取文件。

shell$ command > points.dat

在gnuplot

gnuplot> plot "points.dat" using 1:2

并按窗口上的e进行更新,或查看示例

gnuplot> help reread

2
投票

您可以使用plotti.co将您的绘图导出到网络中,如下所示:

<program> | xargs -L1 sh -c 'wget -q -O /dev/null http://plotti.co/4134314?d=$0'

你会在地址http://plotti.co/4134314/plot.svg现场观看

免责声明:我是plotti.co的创建者


1
投票

我正是为了这个目的写了livechart。它基于matplotlib,通过stdin接受带有数字数据的数字或JSON对象。

sudo pip install livechart

请注意,建议使用Python2.7,因为matplotlib在3.x下不适合我。此外,您可能需要安装C ++编译器来构建matplotlib(Debian上的sudo apt-get install g++)。


0
投票

我强烈推荐ttyplot,你可以直接在终端建立实时图表,从STDIN读取数据

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.