文章目录
show()——显示绘制图形
import matplotlib.pyplot as plt #引入pyplot模块
plt.show() # 显示绘制的图形,当我们绘制后调用,在jupyter notebook里自带此函数
figure()
plt.figure(figsize(20,8),dpi=80)
- figure图形图标的意思,在这里指的就是画的图
通过实例化一个figrue并且传入参数,并让后台自动使用该figure实例 - 在图像模糊的时候可以传入dpi参数,让图片更清晰
放在plot画之前设置
plot()——画线
plot(列表x轴值,列表y轴值,color="origin",linestyle="--",linewidth=5,alpha=0.5)
#linestyle=":" #alpha 透明度,
#颜色不会拼写可以用百度输入对应的十六进制(输入 颜色代码)
import matplotlib.pyplot as plt #引入pyplot模块
import numpy as np #引入numpy库
x=np.arange(-10,11) #创建一个-10-10的数组
y=np.arange(-100,110,10) #创建一个-100-110,间隔为10的数组
plt.plot(x,y)
plt.show() #在jupyter notebook里自带此函数
输出结果:
linewidth——线条宽度
plt.plot(x,y,linewidth=20)
import matplotlib.pyplot as plt #引入pyplot模块
import numpy as np #引入numpy库
x=np.arange(-10,11) #创建一个-10-10的数组
y=np.arange(-100,110,10) #创建一个-100-110,间隔为10的数组
plt.plot(x,y,linewidth=20) # linewidth=5是正常宽度
plt.show()
import matplotlib.pyplot as plt #引入pyplot模块
import numpy as np #引入numpy库
x=np.arange(-10,11) #创建一个-10-10的数组
y=np.arange(-100,110,10) #创建一个-100-110,间隔为10的数组
plt.plot(x,y,linewidth=5) # 正常宽度
plt.show()
title()、xlabel()、ylabel()——标题的显示
plt.title("string") #图的标题string
plt.xlabel("string") #x轴的标题string
plt.ylabel("string") #y轴的标题string
import matplotlib.pyplot as plt #引入pyplot模块
import numpy as np #引入numpy库
x=np.arange(-10,11) #创建一个-10-10的数组
y=np.arange(-100,110,10) #创建一个-100-110,间隔为10的数组
plt.plot(x,y,linewidth=20) # linewidth=5是正常宽度
plt.title("y=x * 10") #图的标题
plt.xlabel("value_x") #x轴的标题
plt.ylabel("value_y") #y轴的标题
plt.show()
xticks()、yticks()——设置x、y轴刻度
xticks(ticks, [labels], **kwargs)
ticks:数组类型,用于设置X轴刻度间隔
[labels]:数组类型,用于设置每个间隔的显示标签
**kwargs:用于设置标签字体倾斜度rotation和颜色color等外观属性。
import matplotlib.pyplot as plt #引入pyplot模块
import numpy as np #引入numpy库
x=np.arange(-10,11) #创建一个-10-10的数组
y=np.arange(-100,110,10) #创建一个-100-110,间隔为10的数组
plt.plot(x,y,linewidth=5) # linewidth=5是正常宽度
plt.title("y=x * 10") #图的标题
plt.xlabel("value_x") #x轴的标题
plt.ylabel("value_y") #y轴的标题
xlabels=['T%s'%i for i in x]
plt.xticks(x,xlabels,rotation=45,color="blue")#倾斜45度,x轴刻度为蓝色
小练习——温度折线图
plt.show()
#设置x刻度
#想设置为1-24,想设置成啥就传个啥样的列表
#简化步骤,可以考虑列表生成式,例子:x=[i/2 for i #in range(2,49)]
#xticks(range(1,25))
#xticks(x[::2])#如果设置得太密集,可以设置步长
#y=[random.randint(15,35) for i in range(12) ]
grid() ——设置网格
import matplotlib.pyplot as plt #引入pyplot模块
import numpy as np #引入numpy库
x=np.arange(-10,11) #创建一个-10-10的数组
y=np.arange(-100,110,10) #创建一个-100-110,间隔为10的数组
plt.plot(x,y,linewidth=5) # linewidth=5是正常宽度
plt.title("y=x * 10") #图的标题
plt.xlabel("value_x") #x轴的标题
plt.ylabel("value_y") #y轴的标题
xlabels=['T%s'%i for i in x]
plt.grid()
plt.xticks(x,xlabels,rotation=45,color="blue")#倾斜45度,x轴刻度为蓝色
legend()——图例说明
a=plt.plot(数组x,数组y,label="数值a") #定义个label
b=plt.plot(数组x,数组y,label="数值b") #定义个label
plt.legend(a,b) #调用legend()
import matplotlib.pyplot as plt #引入pyplot模块
import numpy as np #引入numpy库
x=np.arange(-10,11) #创建一个-10-10的数组
y=np.arange(-100,110,10) #创建一个-100-110,间隔为10的数组
plt.plot(x,y,linewidth=5) # linewidth=5是正常宽度
plt.title("y=x * 10") #图的标题
plt.xlabel("value_x") #x轴的标题
plt.ylabel("value_y") #y轴的标题
xlabels=['T%s'%i for i in x]
plt.xticks(x,xlabels,rotation=45,color="blue")#倾斜45度,x轴刻度为蓝色
plt.plot(x,y,label="数值a") #定义个label
plt.legend() #调用legend()
plt.show()
savefig()——保存图片
savefig("file_path")
import matplotlib.pyplot as plt #引入pyplot模块
import numpy as np #引入numpy库
x=np.arange(-10,11) #创建一个-10-10的数组
y=np.arange(-100,110,10) #创建一个-100-110,间隔为10的数组
plt.plot(x,y,linewidth=5) # linewidth=5是正常宽度
plt.title("y=x * 10") #图的标题
plt.xlabel("value_x") #x轴的标题
plt.ylabel("value_y") #y轴的标题
xlabels=['T%s'%i for i in x]
plt.grid()
plt.xticks(x,xlabels,rotation=45,color="blue")#倾斜45度,x轴刻度为蓝色
plt.savefig("D:\jk.jpg")
基础部分总结
——————————————————————————————————————————
对比常用统计图
scatter()——绘制散点图
import matplotlib.pyplot as plt
import matplotlib
font={
'family':"MicroSoft YaHei"
}
matplotlib.rc("font",**font) #解决中文无法显示问题
y_1=[random.randint(10,18) for i in range(30)] #列表生成式
x_1=range(1,len(x_1)+1)
x_2=[i for i in range(30)]
plt.xticks(x_2,rotation=45)
plt.xlabel("日期")
plt.ylabel("温度")
plt.scatter(x_1,y_1)
bar()——绘制纵向直方图
a=["战狼2","速度与激情8","变形金刚5","金刚狼3","情圣","功夫瑜伽"]
b=[56.01,26.94,17.53,16.49,15.45,12.96]
#设置中文的代码和引入库的代码前面有,这里没放上去
plt.bar(range(len(a)),b,width=0.5)
plt.xticks(range(len(a)),a,rotation=45)
barh()——绘制横向条形图
a=["战狼2","速度与激情8","变形金刚5","金刚狼3","情圣","功夫瑜伽"]
b=[56.01,26.94,17.53,16.49,15.45,12.96]
plt.barh(range(len(a)),b,height=0.5)
plt.yticks(range(len(a)),a)
hist()——绘制直方图
import matplotlib.pyplot as plt
import numpy as np
data=[np.random.randint(140,180) for i in range(300)]
plt.hist(data,bins=10)
plt.show()