目录
前言
准备阶段
下载软件以及相应的库
调用包与测试
绘制matplotlib图表组成元素的函数用法
1、折线图 plot()函数
2、散点图 scatter()函数
3、坐标轴相关函数
①设置x/y轴数值的显示范围
②设置x/y轴的文本
③设置坐标轴的网格线
4、参考线、参考域函数
①绘制平行于x/y轴的水平/垂直参考线
②绘制垂直于x/轴的参考区域
5、图形指向性注释文本
6、标题与标签
python是一门非常智能的语言,它里面的matplotlib库,是绘制二维、三维图表的重要可视化工具。这使得我们可以用简单的绘图语句实现精细的绘图效果。接下来就让我们带着好奇心走进matplotlib的数据可视化的世界吧!
安装编程软件:pycharm(自行下载,略)
下载matplotlib库:
①选择左上角的File,在File下找到setting选项
②找到project下的python interpreter,并选择选择对应的解释器后,点击"+"号
③下载matplotlib库,以及numpy包
出现package“xxxx”installed successfully,即表示下载成功。
当然了也可以通过在终端下下载,不过上述方法更为方便,小编这里就不去展示在终端terminal下载的方式啦。
我们导入第三方包numpy,是因为matplotlib库是建立在numpy的基础之上的
试着跑一下下述代码,看看能不能跑的通
import numpy as np
import matplotlib.pyplot as plt
x=np.linspace(0,2*np.pi,15)
y=np.sin(x)
plt.scatter(x,y)
plt.show()
若成功运行出,结果大概是这个样子:
当然了,整体呈现出一个周期的正弦函数,点的位置是随意的,一共有15个点。
那么接下来,我们要正式开展matplotlib的学习啦!
调用方式:
plt.plot(x,y,ls="-",lw=2,label="plot figure",c="r",marker="o")
各个参数说明:
x:x轴上的数值
y:y轴上的数值
ls:折线图的线条风格
lw:折线图线条宽度
label:标记图形内容的标签文本;要配合plt.legend()使用
c:设置颜色
marker:设置点的样式
实践:已知周同学近三个月的周考成绩如下图, 请用python的matplotlib库绘制出每周与周考成绩对应的折线图,要求折线宽为2,风格为虚线(“:”),标签label为“Trend of weekly test results”
先别急着看答案,自己动手敲一敲再来看小编写的
先来放最终的结果:
其代码为:
import numpy as np
import matplotlib.pyplot as plt
x=np.array([1,2,3,4,5,6,7,8,9,10,11,12])
y=np.array([117,110,105,121,130,108,99,107,119,123,131,140])
plt.plot(x,y,ls=":",lw=2,label="Trend of weekly test results")
plt.legend()
plt.show()
调用方式:
plt.scatter(x,y,label="plot figure",c="b",marker="o")
各个参数说明:
x:x轴上的数值
y:y轴上的数值
label:标记图形内容的标签文本
c:设置颜色
marker:设置点的样式
在“ 调用包与测试 ”那里就是散点图呈现的结果,就不做其他实践啦
调用方式:
plt.xlim(xmin,xmax)
各个参数说明:
xmin:x轴上的最小值
xmax:x轴上的最大值
同理,对y轴设置范围有着异曲同工之妙
调用方式:
plt.ylim(ymin,ymax)
各个参数说明:
ymin:y轴上的最小值
ymax:y轴上的最大值
调用方式:
plt.xlabel(string)
各个参数说明:
string:x轴上的文本内容
对y轴同理,
调用方式:
plt.ylabel(string)
各个参数说明:
string:y轴上的文本内容
调用方式:
plt.grid(linestyle=":",color="r")
各个参数说明:
linestyle:网格线线条风格
color:网格线线条颜色
调用方式:
plt.axhline(y=0.0,lw=2,ls="--",c="r")
各个参数说明:
y:水平参考线出发点
ls:参考线线线条风格
lw:参考线线条宽度
c:参考线线条颜色
对垂直参考线
调用方式:
plt.axvline(x=0.0,lw=2,ls="--",c="r")
各个参数说明:
x:垂直参考线出发点
ls:参考线线线条风格
lw:参考线线条宽度
c:参考线线条颜色
调用方式:
plt.axvspan(xmin=1.0,xmax=2.0,facecolor="y",alpha=0.3)
各个参数说明:
xmin:参考区域的起始位置
xmax:参考区域的终止位置
facecolor:参考区域的填充颜色
alpha:颜色透明度
同理,对于垂直y轴的参考区域
调用方式:
plt.axhspan(ymin=1.0,ymax=2.0,facecolor="b",alpha=0.3)
各个参数说明:
ymin:参考区域的起始位置
ymax:参考区域的终止位置
facecolor:参考区域的填充颜色
alpha:颜色透明度
实践:伍老师是一名初中班主任,她所在的班级有以下男同学,已知男初中生的身高在167到172是正常水平,体重在53到59千克是合格水平。请建立身高与体重的散点关系图,并且用绘制参考区域的方式,数一数正常身高体重的人有几个。
先自己敲代码!敲完了再看小编写的代码。
结果应该是这样:
仅有一个身高体重都在标准范围内!所以小编在这里鼓励大家多运动减减肥,长高高。
import numpy as np
import matplotlib.pyplot as plt
height=np.array([169,177,175,165,171,159])
weight=np.array([57,75,70,53,60,52])
plt.scatter(height,weight,ls=":",lw=2)#风格啥的自己调整
plt.axvspan(xmin=167,xmax=172,facecolor="y",alpha=0.3)
plt.axhspan(ymin=53,ymax=59,facecolor="y",alpha=0.3)
plt.show()
调用方式:
plt.annotate(string,xy=(0,0),xytext=(0.2,0.2),weight="bold",color="y",arrorprops=dict(arrorstyle="->",connectionstyle="arc3,color="b"))
各个参数说明:
string:图形内容注释文本
xy:被指向那一点的坐标
xytext:注释的坐标
weight:注释文本的字体粗细风格
color:注释文本的字体颜色
arrowprops:箭头的属性(是一个字典属性哦)
实践:在上一节的实践中,指出合格的点,并注释一个“excellent”
结果如图:
小编写的代码为:
import numpy as np
import matplotlib.pyplot as plt
height=np.array([169,177,175,165,171,159])
weight=np.array([57,75,70,53,60,52])
plt.scatter(height,weight,ls=":",lw=2)
plt.annotate("excellent",xy=(169,57),xytext=(167,55),weight="bold",color="r",arrowprops=dict(arrowstyle="->",connectionstyle="arc3",color="b"))
plt.show()
调用方式:
plt.title(string)
各个参数说明:
string:图形内容的标题文本
标题在图片的最上方!!
好啦,本期的matplotlib库的教学就到这里啦,如果您觉得小编的文章对您有帮助,那就请您动动小手,三连后再走呗!