《Python Qt GUI与数据可视化编程》第12章 PyQtChart二维绘图

第12章 PyQtChart二维绘图

Charts是Qt的一个二维图表模块,可以绘制各种常见的二维图表,如折线图、柱状图、饼图、散点图、极坐标图等,功能比较全面,绘制的图形效果也比较美观,是用于数据二维可视化的有力工具。PyQtChart是Qt Charts模块的Python绑定,它需要单独安装。

本章首先介绍PyQtChart模块的基本特点和功能,以画折线图为例介绍用PyQtChart绘制一个二维图表的程序基本结构,以及一个图表的各组成部分的程序控制方法,然后介绍散点图、柱状图、饼图、蜡烛图等典型图表的绘制,还有图表框选缩放、左右双坐标轴、对数坐标轴、时间日期坐标轴等一些功能的实现。

12.1 PyQtChart概述

12.2 QChart绘制折线图

实例Demo12_2以绘制折线图为例,详细介绍图表各个部分的设置和操作,包括图表的标题、图例、边距等属性设置,QLineSeries序列的属性设置,QValueAxis坐标轴的属性设置等。程序运行时界面如图12-5所示。

图12-5 示例Demo12_2运行时界面

12.3 QChart绘图高级功能

本节再通过一个实例Demo12_3介绍绘制图表的一些高级和实用功能的实现,如通过鼠标拖放框选一个范围放大、显示鼠标处的坐标数值等。

图12-11 实例Demo12_3运行时界面

12.4 对数坐标轴和多坐标轴

本节通过实例Demo12_4演示如何使用对数坐标轴QLogValueAxis,以及如何在一个图表中附加左、右两个坐标轴,两个序列的纵轴分别使用左轴和右轴,但是共用底部的横轴。实例运行时界面如图12-13所示。

图12-13 示例Demo12_4运行时界面

12.5 饼图和各种柱状图

图12-15 实例Demo12_5运行时界面

 

图12-18 饼图绘图界面

12.6 蜡烛图和日期时间坐标轴

蜡烛图是股票等金融数据分析常用的一种图形,PyQtChart模块中用于绘制蜡烛图的序列类是QCandlestickSeries。实例Demo12_6使用QCandlestickSeries序列类绘制蜡烛图曲线,同时横坐标轴使用了日期时间坐标轴类QDateTimeAxis,可以方便地以日期时间数据作为坐标数据。实例Demo12_6运行时界面如图12-19所示。

图12-19 实例Demo12_6运行时界面

12.7 区域填充图

PyQtChart模块中的QAreaSeries是一个用于绘制区域填充图形的序列类。

图12-20 实例Demo12_7运行时界面

12.8 极坐标图

PyQtChart模块中绘制极坐标图要用到QPolarChart类,它的父类是QChart。所以,QPolarChart是一个图表类,而不是一个序列类。

在QPolarChart图上可以使用QLineSeries,QSplineSeries,QScatterSeries,QAreaSeries等序列类绘图,可以使用QValueAxis、QCategoryAxis等任何坐标轴类作为径向坐标轴或角度坐标轴。

实例Demo12_8使用QPolarChart和QSplineSeries绘制玫瑰线,径向坐标轴和角度坐标轴都使用QValueAxis坐标轴类。程序运行时界面如图12-23所示。

图12-23 实例Demo12_8运行时界面

 

<上一章>               <回主页>                <下一章>

  • 3
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值