首页 > 编程知识 正文

pyqt5实例教程(python图形化编程)

时间:2023-05-04 17:16:11 阅读:91306 作者:4534

引言

pyqtgraph是Python平台上功能强大的2D/3D图形库,针对matplotlib库,内部实现方式为高速计算的numpy信号处理库和Qt的GraphicsView

关于pyqtgraph绘图库,一些文章已经介绍了该库的基本使用方法,包括如何连续更新波形图、如何逐渐更新波形图、如何显示多条曲线以及如何自定义坐标轴文字信息。 详情请参照上一篇文章。

这次我将向大家介绍如何使用这个库绘制股票的k线图。

K线图介绍

股票交易者来说,kline图表是揭示股票在一定时期内走势的最基本的图形工具。 kline分阳线和阴线,阳线和阴线包含开盘价、收盘价、最高值和最低价。 一般的kline如下图所示。

收盘价大于开盘价时称为阳线,图形上一般用红色表示,相反收盘价低于开盘价时称为阴线,图形上一般用绿色表示。 因为它的形状像蜡烛,所以kline图有时也被称为蜡烛图。

针对

实例说明

某只股票,模拟一定期间内每天的开盘价、收盘价、最高值、最低价的数据,绘制其k线图的趋势。 执行界面如下图所示。

上图描绘了某股7天的交易信息。 在此图中,可以清晰地看到每天的起始值、收盘价、最高值、最低值的数据信息。 从颜色也可以看出开盘价和收盘价的大小关系。

编程思路

是pyqtgraph绘图库,其内部实现方式采用Qt的图形视图框架结构,各小部件为QGraphicitem类继承的图形项目,因此显示kline地图

自定义kline部件CandlestickItem后,将其添加到主视图窗口,以完全显示股票的kline信息。

另外,其k线图的横坐标一般为时间,需要单独定制横坐标的信息。

部件类CandlestickItem的实现

K线图零部件CandlestickItem类的实现代码如下图所示。

主要代码解释如下。

)1)传递到第18-21行、类的初始化代码和data参数中。 这个参数包含每天的股票数据,其类型为列表,各要素为元组,包含股票的time、open、close、min、max等信息。

)2)第23-31行生成k线图的图像picture,用初始化函数调用一次。

)3)在第33-34行,在绘制函数上绘制k线图图像的柱状图信息。

4 )在第36-37行中,在boundingRect函数中,基于图像的图片的边界尺寸定义该部件的尺寸信息。

完整的测试代码

调用上面的部件类,完整的测试代码如下图所示。

主要代码解释如下。

(1)第15行,编制APP实例APP。

)2)第39-47行生成模拟的每日股票数据,包括股票的time、open、close、min、max等信息。

(3)第48行,定义k线图零部件实例item。

(4)定义第50-52行、横向坐标轴实例myAxis,将坐标轴的数值信息转换为日期信息。

5 )在第54-56行,创建图形显示窗口win,设定窗口标题、窗口大小等属性。

6 )第58-62行,在win中添加绘图对象p,将坐标轴设置为myAxis,添加kline部件实例item,设置x、y轴标题、图形标题等信息。

(7)在第64行中,使用app.exec_ ) )函数执行实例,进入消息吉鲁组。

运行上面的代码时,将显示本文中介绍的执行界面图。

总结

从这个例子可以看出,在Python上使用pyqtgraph绘图库绘制股票的k线图比较容易。 本例中可以学习的pyqtgraph绘图库的编程知识点如下

1 )如何定制绘图零件?

(2)如何定制坐标轴信息?

如果你觉得这篇文章对你有帮助的话,关注收藏进行夸奖吧。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。