Matplotlib基础

Matplotlib

1.什么是matplotlib

  • ​ 专门用于开发2D图表(包括3D图表,但不怎么擅长3D图表)
  • 以渐、交互式实现数据可视化

2. hello_matplotlib

  • 简单折线图的绘制
import matplotlib.pyplot as plt
#1.创建画布
plt.figure(figsize=(20,8),dpi=100)#figsize,设置图像大小比例为20:8,dpi,图像的清晰度
#2.绘制图像
plt.plot([1,2,3,4,5,6],[12,13,15,12,16,13])
#3.图像显示
plt.show()

  • 初始折线图的绘制
#0.准备X,Y坐标的数据
x = range(60)
y_shanghai = [random.uniform(15,18) for i in x]
#1.创建画布
plt.figure(figsize=(20,8),dpi=100) #figsize,设置图像大小比例为20:8,dpi,图像的清晰度
#2.绘制图像
plt.plot(x,y_shanghai)
#3.图像显示
plt.show()

3.添加自定义x,y刻度

  • 为图像添加基本信息
import matplotlib.pyplot as plt
import random
from pylab import mpl

#设置显示中文字体
mpl.rcParams["font.sans-serif"] = ["SimHei"]
#设置正常显示符号
mpl.rcParams["axes.unicode_minus"] = False

#0.准备X,Y坐标的数据
x = range(60)
y_shanghai = [random.uniform(15,18) for i in x]#生成60个15-18之间的浮点数


#1.创建画布
plt.figure(figsize=(20,8),dpi=100) #figsize,设置图像大小比例为20:8,dpi,图像的清晰度

#2.绘制图像
plt.plot(x,y_shanghai)

#2.1添加x,y轴刻度
#构造x,y轴刻度标签
x_ticks_label = ["11点{}分".format(i) for i in x]
y_ticks = range(40)

#刻度显示
plt.xticks(x[::5],x_ticks_label[::5]) #必须先有数再贴标签,也就是说
plt.yticks(y_ticks[::5])

#2.2添加网格显示
plt.grid(True,linestyle="--",alpha=0.5)#True:添加网格线,linestyle:网格线类型,alpha:线条透明度,0为全透明,1为实线

#2.3添加描述信息
plt.xlabel("时间")
plt.ylabel("温度",fontsize=20)
plt.title("中午11点--12点某城市温度变化图",fontsize=20)#fontsize,设置字体大小

#2.4 图像保存
plt.savefig("./test.png")

#3.图像显示
plt.show()
posted @ 2023-02-08 22:40  小杨的冥想课  阅读(18)  评论(0编辑  收藏  举报