200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > python数据可视化开发(1):Matplotlib库基础知识

python数据可视化开发(1):Matplotlib库基础知识

时间:2023-03-28 09:35:43

相关推荐

python数据可视化开发(1):Matplotlib库基础知识

文章目录

前言01.工具栏组件02.图表数据03.设置字体字典全局字体样式常用中文字体对应名称查询当前系统所有字体 04.图像配置实例配置格式参数说明官方文档:[matplotlib.figure](/stable/api/figure_api.html#module-matplotlib.figure) 05.图表标题配置格式参数说明官方文档: 06.文本组件配置格式参数说明官方文档: 07.坐标轴标签组件配置格式参数配置官方文档: 08.网格组件配置格式参数配置官方文档: 09.绘制折线配置格式参数配置fmt 参数用法颜色(可用 color 参数代替):点型(可用 marker 参数代替)线型(可用 linestyle 参数代替): 官方文档: 10.图例组件配置格式参数配置官方文档: 11.图表渲染总结

前言

Matplotlib 是 Python 的绘图库,它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式。Matplotlib 可以用来绘制各种静态,动态,交互式的图表。Matplotlib 是一个非常强大的 Python 画图工具,我们可以使用该工具将很多数据通过图表的形式更直观的呈现出来。Matplotlib 可以绘制线图、散点图、等高线图、条形图、柱状图、3D 图形、甚至是图形动画等等。

使用Matplotlib生成一个曲线的完整代码(其中部分代码是可以省略的,为了便于将相关属性快速有效的予以记录,本文尽量将相关属性都列了出来。)

# 导入库import numpy as npimport matplotlib.pyplot as plt# 设置中文显示plt.rcParams['font.sans-serif'] = ['microsoft yahei'] #显示中文# 01.工具栏组件plt.rcParams['toolbar'] = 'toolbar2' # 设置工具栏# 02.模拟数据x = np.linspace(0.0, 5.0, 100)y = np.cos(2 * np.pi * x) * np.exp(-x)# 03.设置字体字典font = {'family': 'microsoft yahei','color': '#000','weight': 'normal','size': 12}# 04.图像配置实例plt.figure('漏刻有时数据可视化 - TestWin', facecolor='w') # 设置图形弹出窗口标题# 05.图表标题plt.title('漏刻有时折线图', fontdict=font, loc='center', y=1) # 图表标题# 06.文本组件plt.text(0.91, -0.31, r'智能化数据的转账点', fontdict=font, c='b', rotation=30) # 文本# 07.坐标轴标签组件plt.xlabel('时间:单位 (s)', fontdict=font) # x轴plt.ylabel('数值:单位 (mv)', fontdict=font) # y轴# 08.网格组件plt.grid(which='major', axis='both', color='g', linestyle='-', linewidth=0.1) # 网格# 09.绘制折线plt.plot(x, y, 'r', label='直连线', marker='d') # 绘制折线# 10.图例组件plt.legend() # 设置图例# 11.图表渲染plt.show()

01.工具栏组件

'''工具栏组件# 注意,应当放置在图像实例化之前。# None模式:禁用工具栏# toolbar2模式:默认工具栏布局# toolmanager模式:工具栏布局在首行'''plt.rcParams['toolbar'] = 'toolbar2' # 设置工具栏

toolmanager模式:

RcParams说明文档:RcParams

02.图表数据

折线图,一般是x轴和y轴数据,设置为对应的列表即可。本案例作为Matplotlib库的基础知识,只做简单的数据展示,不涉及更复杂的数据读取和计算。

如:

numpy模拟数据

x = np.linspace(0.0, 5.0, 100)y = np.cos(2 * np.pi * x) * np.exp(-x)

自定义固定数据

x = [1, 2, 3, 4, 5]y = [i * 2 for i in x] #推导式

random随机数据

x = [random.randint(0, 10) for i in range(10)]y = [i * 2for i in x]

pandas读取本地excel表格数据pymysql读取数据库数据

03.设置字体字典

全局字体样式

Matplotlib如果未正常设置中文字体,会出现乱码。基于实际开发情况,图像标题、图表标题、图例和标签都涉及到中文字体的应用,因此采用使用 matplotlib 模块的 rcParams,全局字体样式:

plt.rcParams['font.sans-serif'] = ['microsoft yahei']`

当然,也可以具体在某些组件使用时,单独调用对应的属性,如:

plt.title('自定义标题名称', fontproperties='SimHei')

常用中文字体对应名称

查询当前系统所有字体

如果要实时查询当前系统的所有字体,可以使用matploylib自带的font_manager属性进行遍历查询:

# 查询当前系统所有字体from matplotlib.font_manager import FontManagersys_fonts = [f.name for f in FontManager().ttflist]for f in sorted(sys_fonts):print(f)

字体结果展示:

04.图像配置实例

配置格式

plt.figure() 函数可以用于创建绘图窗口,可以传入以下常用参数:

matplotlib.figure.Figure(figsize=None, dpi=None, *, facecolor=None, edgecolor=None, linewidth=0.0, frameon=None, subplotpars=None, tight_layout=None, constrained_layout=None, layout=None, **kwargs)

如:

# 配置实例plt.figure('漏刻有时数据可视化 - TestWin', facecolor='w') # 设置图形弹出窗口标题

参数说明

官方文档:matplotlib.figure

05.图表标题

配置格式

matplotlib.pyplot.title(label, fontdict=None, loc=None, pad=None, *, y=None, **kwargs)

参数说明

官方文档:

matplotlib.pyplot.title

06.文本组件

配置格式

matplotlib.pyplot.text(x, y, s, fontdict=None, **kwargs)

参数说明

官方文档:

matplotlib.pyplot.text

07.坐标轴标签组件

配置格式

xlabel和ylabel的配置格式和参数一致。

matplotlib.pyplot.ylabel(ylabel, fontdict=None, labelpad=None, *, loc=None, **kwargs)

参数配置

官方文档:

matplotlib.pyplot.ylabel

08.网格组件

配置格式

matplotlib.pyplot.grid(visible=None, which=‘major’, axis=‘both’, **kwargs)

参数配置

官方文档:

matplotlib.pyplot.grid

09.绘制折线

配置格式

matplotlib.pyplot.plot(*args, scalex=True, scaley=True, data=None, **kwargs)

参数配置

plot([x], y, [fmt], *, data=None, **kwargs)plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs)

kwargs 中常用参数:

fmt 参数用法

fmt 参数传入一个字符串,按颜色、点型、线型的顺序拼接而成。

颜色(可用 color 参数代替):

点型(可用 marker 参数代替)

线型(可用 linestyle 参数代替):

官方文档:

matplotlib.pyplot.plot

10.图例组件

配置格式

matplotlib.pyplot.legend(*args, **kwargs)

参数配置

legend()legend(handles, labels)legend(handles=handles)legend(labels)

官方文档:

matplotlib.pyplot.legend

11.图表渲染

显示所有的图形。

matplotlib.pyplot.show(*, block=None)

总结

Matplotlib的基础选项属性以官网为准/stable/api/pyplot_summary.html,由于是英文缘故,在实际学习和开发过程中,需要尽量多实践多练习。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。