我有一些python代码,经常接收一条包含时间戳和边缘转换(从低到高或从高到低)的消息。我想在条形图上绘制每个转换,以便以最少的工作量快速而脏兮兮地显示数字波形。
你能推荐一些简单的方法或软件包吗?
我也不反对以csv格式导出数据,并将其加载到另一个程序中,如果这样做更容易的话。
编辑:
试过的CairoPlot:
>>> data = [(10, 0), (11, 1), (12.5, 0), (15, 1)]
>>> def fn(t):
... for d in data:
... if t > d[0]:
... return d[1]
... return data[-1][1]
...
>>> CairoPlot.function_plot( 'tester.png', data, 500, 300, discrete = True, h_bounds=( data[0][0],data[-1][0]), step = 1 )
这让我的CPU在超过10分钟的时间里保持100%的速度,并且一直在消耗内存。我在它用完所有的交换之前就把它杀了。我是做错什么了还是凯洛普洛特刚刚坏了?
进一步编辑:
我现在有了一些更可行的使用CairoPlot的方法,大致基于上面的代码。然而,由于分辨率的原因,它并不完美:我可能需要高达数十纳秒(1e-8)的分辨率才能捕捉到一些较短的脉冲。对于多秒图,使用此方法需要很长的时间。
我自己没有用过,但也许Cairo Plot值得一看。
Matplotlib可能有用。看看这个strip chart demo。
您可以尝试使用CairoPlot:
有关详细信息,请检查CairoPlot
编辑:
我不明白你在这里的作用。函数图的概念是绘制函数而不是矢量。
要绘制这些点,可以使用以下方法使用函数绘制:
我想那能行
对于100%固定CPU,这不应该发生。。。我今天晚些时候再看。谢谢你指点我 \欧
相关问题 更多 >
编程相关推荐