版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据可视化的使用制作:教材编写团队出版社:机械工业出版社《Python编程基础与应用》配套课件本课件为《Python编程基础与应用(第2版)》配套教学资源,由编写团队精心打造。为便于教学使用,团队同步提供了丰富的辅助材料,涵盖微课视频、教学课件、实训手册、习题答案、课程标准及程序源代码等。同时,教材配套超星教学示范包,支持一键克隆为网络在线课程,助力高效开展线上线下混合式教学。欢迎联系出版方订购使用。
书名:《Python编程基础与应用(第2版)》出版社:机械工业出版社主编:蓝永健、陈冬冬副主编:蔡德琛、朱海鑫、邓爱玲+contents目录matplotlib的安装和简介MyQR的安装和简介qrcode的安装和简介matplotlib的安装和简介01matplotlib的简介Matplotlib是Python最流行的2D绘图库之一,用于创建高质量的静态、动态和交互式可视化。它提供类似MATLAB的语法,支持折线图、散点图、柱状图、等高线图等多种图表类型。核心组件包括pyplot模块(简化绘图)、Figure(画布)和Axes(坐标系)。可与NumPy、Pandas无缝集成,支持自定义样式、标签和注释。通过plt.show()显示图像,或savefig()保存为PNG/PDF等格式。它是数据分析和科学计算的重要工具。matplotlib的简介matplotlib的安装pipinstallmatplotlib有关它的更多介绍请访问英文网站/或者中文网站/。开发者可以仅需要几行代码,便可以生成饼图、直方图、箱形图、条形图和散点图等。安装matplotlib时,通常会同步安装numpy库。有些matplotlib运算需要用到numpy库。Matplotlib常用图表类型及函数类型函数名称关键参数说明注意事项折线图plt.plot()x,
y:数据坐标
linestyle:线型(如
'-'、'--')
color:颜色
label:图例标签适用于连续数据趋势展示;可通过
alpha
调整透明度。散点图plt.scatter()x,
y:数据坐标
s:点大小
c:颜色
marker:点形状(如
'o'、's')适合展示两个变量的相关性;大数据量时性能优于
plot()。柱状图plt.bar()
/
plt.barh()height
(或
width):柱高度
x:柱位置
color:颜色
label:图例标签分类数据对比;barh()
为水平柱状图;可用
alpha
调整透明度。直方图plt.hist()x:输入数据
bins:柱子数量或边界
density:是否归一化
color:颜色展示数据分布;bins
影响结果,需合理设置。Matplotlib常用图表类型及函数图表类型函数名称关键参数说明注意事项饼图plt.pie()x:数据值
labels:标签
autopct:百分比格式
explode:突出部分适合比例展示;数据过多时标签易重叠,建议少于6类。箱线图plt.boxplot()x:数据列表
vert:是否垂直
patch_artist:是否填充颜色展示数据分布和离群点;需注意数据格式(列表的列表)。热力图sns.heatmap()
(Seaborn)data:二维数据
annot:显示数值
cmap:颜色映射
fmt:数值格式需安装Seaborn;适合矩阵数据可视化,如相关系数矩阵。Matplotlib常用图表类型及函数图表类型函数名称关键参数说明注意事项误差条图plt.errorbar()x,
y:数据点
yerr/xerr:误差值
fmt:点和线格式展示数据不确定性;参数需与
plot()
类似。极坐标图plt.polar()
+
plot()theta:角度数据
r:半径数据需先创建极坐标子图:ax=plt.subplot(111,polar=True)。3D图表ax.plot_surface()
等X,
Y,
Z:3D数据
cmap:颜色映射需导入
mpl_toolkits.mplot3d;性能较慢,适合少量数据。Matplotlib通用参数说明颜色:支持名称(如'red')、缩写(如'r')或RGB元组(如(0.2,0.4,0.6))。线型:'-'(实线)、'--'(虚线)、':'(点线)、'-.'(点划线)。标记:'o'(圆圈)、's'(方形)、'^'(三角形)、'*'(星号)。Matplotlib通用注意事项图形清晰:避免过多颜色/样式,保持可读性。标签与标题:务必添加xlabel、ylabel和title。图例:使用plt.legend()显示,注意label参数。子图布局:多子图时用plt.subplots()或plt.tight_layout()调整间距。保存图像:推荐plt.savefig('fig.png',dpi=300)替代plt.show()直接保存。举例:使用matplotlib生成柱形图frommatplotlibimportpyplotasplt#支持中文plt.rcParams['font.sans-serif']=['SimHei']#用来正常显示中文标签plt.rcParams['axes.unicode_minus']=False#用来正常显示负号x=['小王','小陈','小张','小军','小牛','小红']#X轴的值y=[92,86,66,76,80,50]#Y轴的值,数量与X轴的数量一致plt.bar(x,y,align='center')#bar表示柱形图plt.title('学生成绩统计图')#图表标题plt.ylabel('Y轴')#Y轴plt.xlabel('X轴')#X轴plt.show()举例:使用matplotlib生成折线图importmatplotlib.pyplotasplt#折线图示例plt.plot([1,2,3],[4,5,6],linestyle='--',color='blue',label='Line')plt.xlabel('X-axis')plt.ylabel('Y-axis')plt.legend()plt.show()举例:使用matplotlib生成折线图2importmatplotlib.pyplotasplt#支持中文plt.rcParams['font.sans-serif']=['SimHei']#用来正常显示中文标签plt.rcParams['axes.unicode_minus']=False#用来正常显示负号x=[1,2,3,4,5]y=[2,4,6,8,10]plt.plot(x,y,marker='o',label='y=2x')#marker显示数据点plt.xlabel('X轴')plt.ylabel('Y轴')plt.title('折线图示例')plt.legend()plt.show()举例:使用matplotlib生成饼图importmatplotlib.pyplotasplt#支持中文plt.rcParams['font.sans-serif']=['SimHei']#用来正常显示中文标签plt.rcParams[‘axes.unicode_minus’]=False#用来正常显示负号labels=['A','B','C','D']sizes=[25,35,20,20]plt.pie(sizes,labels=labels,autopct='%1.1f%%',startangle=90)plt.title('饼图示例')plt.show()Matplotlib+AI生成图表(1)Matplotlib图表非常多,可以结合AI工具,自动生成python代码,再进行处理。比如,要求对以下水果的销量数据生成柱形图。水果名称销量(单位:千克)苹果120香蕉95橙子80葡萄70西瓜65Matplotlib+AI生成图表(2)编写AIGC提示词使用Python语言和Matplotlib库,编写代码实现水果销售统计图(1)图表类型为柱形图(2)需要有图表的标题、图例、X轴、Y轴(3)柱形图顶部显示对应的销量数值(4)柱形图以彩色显示(5)以下是数据水果名称 销量(单位:千克)苹果 120香蕉 95橙子 80葡萄 70西瓜 65Matplotlib+AI生成图表(3)在DeepSeek中提问Matplotlib+AI生成图表(4)importmatplotlib.pyplotasplt#支持中文plt.rcParams['font.sans-serif']=['SimHei']#用来正常显示中文标签plt.rcParams['axes.unicode_minus']=False#用来正常显示负号#数据fruits=['苹果','香蕉','橙子','葡萄','西瓜']sales=[120,95,80,70,65]#自定义颜色colors=['#FF6B6B','#FFD166','#06D6A0','#118AB2','#073B4C']#创建柱形图plt.figure(figsize=(8,5))#设置画布大小bars=plt.bar(fruits,sales,color=colors,label='销量(千克)')#在柱形顶部显示数值forbarinbars:height=bar.get_height()plt.text(bar.get_x()+bar.get_width()/2,height,f'{height}',ha='center',va='bottom')#添加标题和标签plt.title('水果销量统计图',fontsize=15)plt.xlabel('水果名称',fontsize=12)plt.ylabel('销量(千克)',fontsize=12)plt.legend()#显示图例#调整布局并显示plt.tight_layout()plt.show()Matplotlib+AI生成图表(5)MyQR的安装和简介02MyQR的安装和简介MyQR是Python的一个第三方库,根据需要能够生成普通二维码、带背景图片的艺术二维码、动态二维码。它的安装方法很简单,可以直接使用PIP进行安装:需要注意的是MyQR依赖于python3,在python2的环境下可能无法正常使用。pipinstallMyQRMyQR的参数1)words:二维码内容,可以链接或者简单的句子。2)version:二维码大小,范围为[1,40]。3)level:二维码纠错级别,范围为{L,M,Q,H},H为最高级,也是默认级别。4)picture:自定义二维码背景图,支持格式为.jpg,.png,.bmp,.gif。5)colorized:二维码背景颜色,默认为False,黑白色。6)contrast:对比度,值越高对比度越高,默认为1.0。7)brightness:亮度,值越高亮度越高,默认为1.0,值常和对比度相同。8)save_name:二维码名称,默认为qrcode.png。9)save_dir:二维码路径,默认为程序工作路径。范例:生成普通文本二维码用简单的几行代码就可以生成一个二维码。fromMyQRimportmyqr#导入库myqr.run(words='/’,#二维码的内容
colorized=True,#是否有颜色,如果为False则为黑白
save_name='code.png'#输出文件名)print('二维码已经生成。')范例:生成彩色艺术二维码用简单的几行代码就可以生成一个二维码。fromMyQRimportmyqr#导入库myqr.run(words="HelloWorld!",picture="background.png",#背景图片路径
colorized=True,#彩色二维码
save_name="color_qr.png",)print('二维码已经生成。')范例:生成动态GIF二维码用简单的几行代码就可以生成一个二维码。fromMyQRimportmyqr#导入库myqr.run(words="",picture="animation.gif",#GIF背景
colorized=True,save_name="animated_qr.gif",)print('二维码已经生成。')qrcode的安装和简介03qrcode的安装和简介qrcode是一个纯Python实现的二维码生成库,特点如下:轻量级:不依赖外部库(除Pillow用于图像处理),它支持中文字符。功能全面:支持自定义尺寸、颜色、纠错级别等。输出灵活:可生成PNG/SVG图片,或直接在终端显示文本二维码。广泛用于:支付链接、Wi-Fi共享、联系方式嵌入等场景。qrcode的安装和简介以下是安装方法pipinstallqrcode[pil]#[pil]表示同时安装Pillow库(用于生成PNG图片)。#国家镜像安装pipinstallqrcode[pil]-i/simpleqrcode的参数简介:qrcode.QRCode()构造函数参数参数类型默认值说明versionintNone二维码尺寸(1~40),None
自动根据数据量计算error_correction常量ERROR_CORRECT_M纠错级别:
•
ERROR_CORRECT_L
(7%容错)
•
ERROR_CORRECT_M
(15%)
•
ERROR_CORRECT_Q
(25%)
•
ERROR_CORRECT_H
(30%)box_sizeint10每个小格子的像素大小(直接影响输出图片尺寸)borderint4二维码白色边框的格子宽度(最小为4)image_factory类None指定图片生成器(如
qrcode.image.svg.SvgImage
生成SVG)qrcode的参数简介:add_data()方法参数参数类型说明datastr/bytes二维码内容(支持中文、URL、二进制数据)optimizeint0,数据分段优化(>0时尝试压缩数据量)qrcode的参数简介:make_image()方法参数参数类型默认值说明fill_colorstr/tuple"black"二维码色块颜色(支持颜色名或RGB元组)back_colorstr/tuple"white"背景颜色image_factory类None覆盖构造函数中的图片生成器qrcode的注意事项版本选择:version=None时自动计算最小尺寸,但显式指定可固定大小。颜色规范:颜色名:"red","blue"HEX值:"#FF0000"RGB元组:(255,0,0)纠错级别:如需嵌入Logo,必须使用ERROR_CORRECT_H。范例:完整参数使用示例importqrcodefromqrcode.constantsimportERROR_CORRECT_H#初始化二维码对象qr=qrcode.QRCode(version=7,#固定尺寸(1-40)
error_correction=ERROR_CORRECT_H,#高容错级别
box_size=8,#每个格子8像素
border=2,#窄边框)#添加数据(支持中文)qr.add_data("https://例子.com/中文",optimize=20)#生成彩色二维码图片img=qr.make_image(fill_color=(255,0,0),#红色二维码
back_color="#EEEEEE",#浅灰背景)img.save("custom_qr.png")范例:快速生成二维码(保存为PNG)importqrcode#生成二维码并保存img=qrcode.make("")img.save("example.png")#保存为PNG范例:快速生成二维码(保存为PNG)范例:生成彩色二维码importqrcodeqr=qrcode.QRCode(version=3)qr.add_data("CustomColorQRCode")qr.make(fit=True)#使用十六进制颜色码img=qr.make_image(fil
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江西省万载县株潭中学高中语文 1.4 己所不欲勿施于人教案 新人教版选修《先秦诸子选读》
- 高中物理 第四章 电磁感应 5 电磁感应现象的两类情况教案 新人教版选修3-2
- 高中物理 第3章 1 磁现象 磁场教案 教科版选修3-1
- 一年级语文下册 课文 2 语文园地三第1课时教学设计 新人教版
- 一年级信息技术下册 才艺展示教案 泰山版
- 浙江省温州市八年级历史与社会下册教学设计7.1.1 规模空前的战争浩劫
- 人教A版(2019)高一数学必修第二册-平面向量在几何中的应用-1教案
- UL 1998 2022 中文版 储能软件可编程组件安全标准 软件故障风险测试
- 弘扬长征精神走好高中长征路 教学设计及反思-2025-2026学年高一拓展活动式主题班会
- 高中数学3.4.2函数模型及其应用教案设计
- 2026年辽宁省员额检察官遴选考试真题及答案
- 2026年秋大象版(新教材)小学科学四年级上册教学计划及进度表
- 2026秋小学科学教科版六年级上册(新教材)教学计划附进度表
- 2026版保密教育线上培训考试题库参考答案
- 人教版七年级美术上册 第一单元 峥嵘岁月-美术中的历史(共3课)教案
- 招标代理业务内控管理手册
- 2026年秋季统计学专业开学第一课 专业素养与核心竞争力教学设计
- 民族复兴梦(课件)-2026-2027学年统编版道德与法治九年级上册
- 2026人教版四年级数学上册第五单元第2课《画垂线和点到直线的距离》课件
- 高中数学必修一三角函数单元整体教学设计
- 26新五(上)数学第二单元一课一练《人教版》
评论
0/150
提交评论