php红色酒类食品企业网站源码,二级建造师证书查询官网,怎么申请网址怎么用,如何快速推广网上国网一、引入
Matplotlib 是一个Python的综合库#xff0c;用于在 Python 中创建静态、动画和交互式可视化。 本教程包含笔者在使用Matplotlib库过程中遇到的各类完整实例与用法还有遇到的库理论问题#xff0c;可以根据自己的需要在目录中查询对应的用法、实例以及第四部分关于…一、引入
Matplotlib 是一个Python的综合库用于在 Python 中创建静态、动画和交互式可视化。 本教程包含笔者在使用Matplotlib库过程中遇到的各类完整实例与用法还有遇到的库理论问题可以根据自己的需要在目录中查询对应的用法、实例以及第四部分关于理论的讨论。 教程参考了Eric Matthes的Python Crash Course中的Matplotlib部分和Matplotlib官方示例。 如果你希望了解更详细的用法和实例可以查看Matplotlib官方网站和Python Crash Course。
二、用法部分
①基础类
1.安装Matplotlib
sudo pip install matplotlib # in Linux2.引用Matplotlib常用模块
import matplotlib.pyplot as plt # 引入matplotlib的pyplot模块3.绘制图形
values [1, 2, 3, 4, 5] # x值列表
squares [1, 4, 9, 16, 25] # y值列表
plt.plot(values, squares) # 绘图4.查看图形
plt.show() # 打开matplotlib查看器显示绘制的图形5.保存图形
plt.savefig(file_name.png,bbox_inchestight)#保存文件bbox_inches可选择是否紧凑裁剪②调节设置类
1.线宽调节
plt.plot(x, y, linewidth5) # 线宽设置为52.设置标题
Figure标题
figure标题在整个figure的上部正中。
fig.suptitle(figure_suptitle) # 为Figure设置标题Axes标题
ax.set_title(title) # 为Axes设置标题一般情况标题
对于不区分axes和figure的情况比如一个figure里只有一个axes以下命令也可以使用
plt.title(title, fontsize24) # 设置标题字体大小设置为243.设置轴标签
plt.xlabel(Value, fontsize14) # 设置图标题x轴标签字体大小设置为14
plt.ylabel(Square of Value, fontsize14) # 设置y轴标签字体大小设置为144.设置轴刻度
plt.tick_params(axisboth, whichmajor, labelsize14) # 设置各轴刻度为等距,标签大小设置为14,major为应用参数的刻度组5.隐藏坐标轴
若对图像有洁净的追求希望隐去坐标轴可以使用
plt.axis(off) # 隐藏坐标轴6.设置figure尺寸
plt.figure(figsize(10, 6)) # 设置figure尺寸单位为英寸7.设置轴
ax为一个axes artist设置x轴与y轴的限幅并设置x轴和y轴的标签
ax.set(xlim[0, 3], ylim[-4, 10], xlabelTime [s], ylabelZ [m])8.设置标签
为点设置格式化标签
需要格式化的标签时为label添加f
scat ax.scatter(t[0], z[0], cb, s5, labelfv0 {v0} m/s) # 需要格式化的标签时为label添加f9.设置图例
ax.legend() # 将添加过label的artists添加到四角的图例上③数值处理类
1.生成x值和对应y值[规律]
法1range()
和法3类似法3更优
values list(range(1, 101)) # list搭配range生成多个数的列表
squares [value ** 2 for value in values] # 根绝values生成squares法2:numpy.linspace()
注:该方法引用Numpy库
x np.linspace(0, 2 * np.pi, 200) # np.linspace(起始点终止点采样个数)
y np.sin(x)法3:np.arange(
和法1类似优势在于不用再转一次列表。 注:该方法引用Numpy库
x np.arange(0.0, 2.0, 0.01)2.生成x值和对应y值[随机]
④常见图形类
1.生成点
plt.scatter(values, squares, colorred, s10) # 绘制散点图,s为点大小,color为颜色2.生成线
生成线的本质是生成足够多的点使之连结在视觉上呈现线的感觉。
x np.linspace(0, 2 * np.pi, 200) # 生成足够多的x
y np.sin(x) # 生成足够多对应的y
plt.plot(x, y) # 绘图⑤美化类
1.颜色映射
颜色映射可以将数值大小映射为颜色深浅从而绘制出数值与颜色相关的图像比如温度低的位置颜色浅温度高的地方颜色深。
法1数值颜色映射
plt.scatter(x, y, cy, cmapReds) # 颜色映射
# https://matplotlib.org/stable/gallery/color/colormap_reference.html#sphx-glr-gallery-color-colormap-reference-py如果按照点的先后顺序颜色映射需要先为规则c生成数值列表
法2顺序颜色映射
points_number list(range(101)) # 生成0~100的cmap顺序列表
plt.scatter(x, y, cpoints_number, cmapBlues, s5) # 按照顺序颜色映射⑥动画类
在主代码中写出绘画0时刻的图的代码
三、实例部分
查看github或gitee上的实例代码
四、理论部分
1.Artist、Figure、Axes、Axis的区别
Artist
基本上图形上可见的所有内容都是Artist包括Figure、Axes和Axis对象。 Text对象、Line2D对象、collections对象、Patch 对象等也是Artist。 当 Figure 被渲染时所有的 Artists 都被绘制到画布上。 大多数Artist和Axes挂钩不能在Axes间切换也不能被Axes共享。
Figure
Figure是整个图形可以看做窗口一个Figure可以包含多个Axes。 Figure可以用pyplot.figure()单独创建
fig plt.figure() # 创建无Axes的空Figure窗口fig, ax plt.subplots() # 创建带有一个Axes的FigureFigure也可以用pyplot.subplots()和Axes一起创建。
Axes
Axes 是附加到 Figure 的 Artist它包含一个用于绘制数据的区域。 Axes通常用pyplot.subplots()和Figure一起创建。 使用axes_name.plot()来绘制数据
fig, ax plt.subplots() # 创建带有一个Axes的Figure
ax.plot([1, 2, 3, 4], [1, 4, 2, 3]) # 在Axes上绘制数据一个Figure上可以有多个Axes。
fig, axs plt.subplots(2, 2) # 创建一个带有2X2个Axes的FigureAxis
一个Axes通常包含两个带有刻度和刻度标签Axis在3D情况下一个Axes包含3个Axis这和我们日常生活中的xyz坐标系含有x、y、z轴是相同的概念。
2.输入数据的要求
Matplotlib要求输入的数据格式为numpy的array也就是numpy数组。
List与Array区别
list是python的内置数据类型而 array数组需要导入numpy库不属于内置类型。 list中的数据类不必相同的即每个元素可以是不同的数据类型。 而array则是由numpy封装存放的元素都是相同的数据类型。
Matrix的输入
矩阵Matrix无法直接作为数据输入需要先通过numpy.asarray()转化为类数组才能输入Matplotlib
a np.matrix([[1, 2], [3, 4]]) # a为numpy矩阵Matrix
a_asarray np.asarray(a) # a转化为类数组a_asarray