深度学习pytorch⼊门之Matplotlib初步
Matplotlib是python的绘图库,⽤来数据可视化或者结果分析都具有很⼤的帮助
⼀、matplotlib安装
如果在anaconda环境下可以直接⽤conda install matplotlib的命令安装;
普通的pip环境可以通过pip install matplotlib进⾏安装
安装之后输⼊python进⼊py环境后执⾏import matplotlib命令,如果没有报错,恭喜安装成功
⼆、创建图
1. 线型图
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
x=np.random.randn(30)
plt.plot(x,"r--o")
输出如下图
前两⾏导⼊包,第三⾏设置直接在notebook中显⽰(本⼈⽤的jupyter notebook),然后固定了随机种⼦,⽅便对结果复现,然后⽣成了30个随机值,最后通过核⼼代码plt.plot(x,“r–o”)绘制,参数属性如下:
第⼀个参数是线条颜⾊
b:蓝⾊线条
g:绿⾊线条
r:红⾊线条
c:蓝绿⾊线条
m:洋红⾊线条
y:黄⾊线条
k:⿊⾊线条
w:⽩⾊线条
第⼆个参数是设置连线形态
-:实线
–:虚线
-
.:点实线,-·-·-·-·-·-·这种
:(冒号):点虚线…这种
第三个参数是数据点形状
o:圆形
*:星形
+:加号
x:x形
a=np.random.randn(35)
b=np.random.randn(35)
c=np.random.randn(25)
d=np.random.randn(40)
plt.title("TEST")
plt.xlabel("X")
plt.ylabel("Y")
matplotlib中subplotA,=plt.plot(a,"r--o")
B,=plt.plot(b,"g-*")
C,=plt.plot(c,"k-.+")
D,=plt.plot(d,"y:x")
plt.legend([A,B,C,D],["A","B","C","D"])
其中title⽅法是设置标题,xlabel,ylabel是设置横轴纵轴标签,通过legend传⼊对应的两个列表,匹配成图例2.⼦图
设置多幅图像同时显⽰
%matplotlib inline
a=np.random.randn(35)
b=np.random.randn(35)
c=np.random.randn(25)
d=np.random.randn(40)
fig=plt.figure()
ax1=fig.add_subplot(2,2,1)
ax2 = fig.add_subplot(2,2,2)
ax3=fig.add_subplot(2,2,3)
ax4=fig.add_subplot(2,2,4)
A,=ax1.plot(a,"r--o")
ax1.legend([A],["A"])
B,=ax2.plot(b,"b-*")
ax2.legend([B],["B"])
C,=ax3.plot(c,"k:x")
ax3.legend([C],["C"])
D,=ax4.plot(d,"y-.+")
ax4.legend([D],["D"])
⾸先通过plt的figure⽅法实例化⼀个⼦图,然后通过add_subplot向fig实例中添加⼦图,参数以(2,2,1)为例,前两个数代表划分成2⾏2列展⽰4幅图⽚,最后的1设置当前图⽚为第⼀幅
注意⼦图⾥没有xlabel等属性
3. 散点图
%matplotlib inline
a=np.random.randn(35)
b=np.random.randn(35)
c=np.random.randn(25)
d=np.random.randn(40)
plt.scatter(b,a,c="r",marker="*",label="(X,Y)")
plt.title("TEST")
plt.xlabel("X")
plt.ylabel("Y")
plt.legend(loc=0)
plt.show()
核⼼代码plt.scatter(x,y,c=“g”,marker=“o”,label="(X,Y)")这⾥前两个参数x,y必须是等维度的,随后参数c指定颜⾊,参数列表同线型图,marker指定点形状,参数列表同线型图,label指定图例,
随后的legend指定图例位置,loc=0⾃动匹配最好的位置,1位于右上⾓,2位于左上⾓,3位于左下⾓等等等等各种位置
4.直⽅图
%matplotlib inline
a=np.random.randn(35)
b=np.random.randn(35)
c=np.random.randn(25)
d=np.random.randn(40)
plt.hist(a,bins=30,color="b")
plt.title("TEST")
plt.xlabel("X")
plt.ylabel("Y")
plt.show()
核⼼代码plt.hist(a,bins=30,color=“b”)第⼀个参数指定数据来源,bins指定条纹数量,color指定颜⾊,参数列表同线型图
5. 饼图
labels=['you','me','him']
a=12.453
b=45.345
c=100-a-b
sizes=[a,b,c]
plt.pie(sizes,explode=(0,0,0.1),labels=labels,autopct='%1.2f%%',startangle=30)
plt.axis('equal')
plt.title("TEST")
plt.show
核⼼代码plt.pie(sizes,explode=(0,0,0.1),label=labels,autopct=’%1.1f%%’,startangle=30)第⼀个参数sizes指定数据来源,分别占的⽐例,explode指定间隔,⽰例中的前两个是0,最后是0.1所以第三部分被突出显⽰,labels指定图例,autopct指定数据格
式,startangle指定开始绘制时同x轴的夹⾓,默认0度(边界⽔平)
plt.axis(“equal”)不可缺少,表⽰x,y轴刻度保持相同,这样图才是圆形
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论