我是 wxpython 的新手,但作为 matplotlib 用户已有一段时间了。我正在开发一个 wxpython 应用程序,我希望在其中有一个带有单个面板的简单框架(实际上是一个 wx.lib.plot.PlotCanvas 实例)。在面板中,我想显示一些数据,这些数据采用二进制数组(称为 imarr)的形式,如下所示:
数组的形状总是 (64,N),N 可以在大约 400 到 1200 之间变化(我可以自己整理面板尺寸)。
要在 matplotlib 中做到这一点,我会使用类似的东西:
fig=figure(figsize=(12,2))
ax=fig.add_subplot(111)
ax.set_ylim(0,63)
ax.set_xlim(0,imarr.shape[0])
ax.set_aspect('equal')
matplotlib.imshow(imarr)
但我完全迷失在 wxpython 中。我一直在研究 wx.lib.plot,但除了漂亮的线条和标记绘图功能之外,似乎没有与 imshow(或 pcolor)等效的功能。
我拥有的一个(丑陋的)解决方案是使用上面的 matplotlib 创建一个 png 图像,然后使用一些 wx 魔法在面板上显示图像(如果这不容易,请让我直截了当)。
我更喜欢从 wxpython 中进行操作,以实现可移植性和整体整洁。关于如何在 wx.lib.plot.PlotCanvas(或更通用的 wx.Panel)上显示二进制数组的任何建议都会非常有用!