在Python中显示波形般的Audacity

在Python中显示波形般的Audacity,python,visualization,bokeh,waveform,audacity,Python,Visualization,Bokeh,Waveform,Audacity,Audacity可以非常轻松地显示数百万个点的波形,并且可以平滑地进行放大和缩小。我试图用Python做同样的事情,但目前我没有找到任何可以显示超过500万个点的东西 Matplotlib似乎不够有效,无法显示那么多数据。我试着用Bokeh来做,但它也有同样的问题(也许我用错了)。最后,Vaex似乎不起作用,因为它没有显示任何东西 目前,我的显示函数如下所示,输入是一个2D numpy数组,第一行是x坐标,第二行是y坐标: def display(data): p = figure(pl

Audacity可以非常轻松地显示数百万个点的波形,并且可以平滑地进行放大和缩小。我试图用Python做同样的事情,但目前我没有找到任何可以显示超过500万个点的东西

Matplotlib似乎不够有效,无法显示那么多数据。我试着用Bokeh来做,但它也有同样的问题(也许我用错了)。最后,Vaex似乎不起作用,因为它没有显示任何东西

目前,我的显示函数如下所示,输入是一个2D numpy数组,第一行是x坐标,第二行是y坐标:

def display(data):
    p = figure(plot_width=1250, plot_height=550) 

    p.line(data[0], data[1])

    hover = HoverTool(tooltips=[
        ("X", "@x"),
        ("Y", "@y"),
    ])

    p.add_tools(hover)

    show(p)

对于这样的数据量,每个像素通常包含多个项目,您可能希望将
datashader
与Bokeh一起使用。但是您将无法生成静态绘图-您将不得不使用Bokeh服务器。由于数据量很大,每个像素通常包含多个项目,因此您可能希望对Bokeh使用
datashader
。但您将无法生成静态绘图-您必须使用Bokeh服务器。