构建带图表的交易平台 - Python GUI库建议

3 投票
2 回答
5696 浏览
提问于 2025-04-16 07:29

我正在做一个小程序,用来实时获取市场数据并绘制图表。虽然交易决策大部分会自动化,但图表会不断更新,这样可以让人随时了解决策是怎么做的,并在必要时手动干预。

对于这个任务,哪个图形用户界面(GUI)库比较好呢?(我用的是Python)。以下是一些考虑因素:

编程语言Python(你觉得我应该用别的语言吗?或者可以把图形界面和后台用不同的语言做?!!)。
操作系统:最好是跨平台的,但如果必须针对特定平台,那就用Linux吧。
速度 + 学习曲线:虽然时间(低延迟)不是特别关键,我希望用起来简单、学习快的东西,但程序要感觉灵敏,我不想在某个点上为了简单编程而牺牲速度。我想这部分你的经验能给我一些帮助。

我曾经考虑过WxPython,但有些评论说它设计得不好(就是说,不太适合Python!)

所以,任务的复杂性和一些额外的考虑因素都摆在你面前了。请帮我建议一下。

附言:如果有人能推荐一个合适的图表库,那就更好了。

2 个回答

2

如果你觉得wxPython用起来舒服,那就直接用它吧。市面上有很多工具包,各有优缺点,总会有人在抱怨它们…… wxPython是个不错的选择,你会发现网上有很多相关的文档,而且它和matplotlib的兼容性很好,正如sgusc所说的,如果你想要更复杂的图表,它也能和OpenGL配合使用。 如果你需要进行大量的计算,在考虑换语言之前,我建议你先看看cython(http://cython.org/),它可以加速你的代码,但除非你发现速度真的成问题,否则最好还是坚持用一种语言。 注意不要把逻辑和你的图形界面混在一起,我觉得这样就可以了。 如果你想找一些好的参考资料,可以看看:

  1. http://www.blog.pythonlibrary.org/
  2. http://zetcode.com/wxpython/

祝你玩得开心 :-)

3

在Python中绘图,我非常喜欢使用Matplotlib(http://matplotlib.sourceforge.net/),它其实是建立在Pylab(http://www.scipy.org/PyLab)之上的一个更易用的工具。这个工具非常强大,还有很多文档和示例可以参考。听起来你的图表并不复杂,所以你可能不需要深入研究这个工具;我觉得越深入API,开发起来就越麻烦,不过大多数工具都是这样的。

我最后用的是Tkinter这个后端,但matplotlib也支持QT、WxPython等其他选项。我对Tkinter和WxPython不是特别喜欢,如果可以选择的话,我可能会用QT,但有这么多选择还是挺不错的。我在Linux和Mac OS X上使用matplotlib都取得了很好的效果。

顺便提一句,如果你决定使用WxPython,这里有一个有趣的相关帖子:wxPython中最好的实时绘图组件是什么?

撰写回答