matplotlib学习

120 阅读2分钟

matplotlib绘图基本步骤

import matplotlib.pylab as plt

#创建画布
plt.figure(figsize=(20,8),dpi=100)  #第一个参数图像大小,第二个参数清晰度

# 绘制图像
plt.plot([1,2,3,4,5,6,7],[10,15,13,18,16,20,10])

# 图像显示
plt.show()

image.png

实现基础绘图功能

# 实现基础绘图功能
import matplotlib.pyplot as plt
import random

# 准备数据
x = range(60)
y= [random.uniform(15,18) for i in x]
# 创建画布
plt.figure(figsize=(20,8),dpi=100)

plt.plot(x,y)
# 图像显示
plt.show()

image.png

添加标题

# 实现基础绘图功能
import matplotlib.pyplot as plt
import random
from pylab import  mpl

mpl.rcParams["font.sans-serif"]=["SimHei"]
mpl.rcParams["axes.unicode_minus"] = False
# 准备数据
x = range(60)
y= [random.uniform(15,18) for i in x]
# 创建画布
plt.figure(figsize=(20,8),dpi=100)
plt.plot(x,y)
x_ticks_label = ["11点{}分".format(i) for i in x]
y_ticks_label = range(40)

plt.xticks(x[::5],x_ticks_label[::5])  #从头到尾5个5个
plt.yticks(y_ticks_label[::5])
plt.title("中午某城市温度变化",fontsize=20)

# 添加网格显示
plt.grid(True,linestyle="--",alpha=1)

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

# 图像显示
plt.show()

添加图像信息

# 实现基础绘图功能
import matplotlib.pyplot as plt
import random
from pylab import  mpl

mpl.rcParams["font.sans-serif"]=["SimHei"]
mpl.rcParams["axes.unicode_minus"] = False
# 准备数据
x = range(60)
y_beijigng = [random.uniform(1,3) for  i in x]
y= [random.uniform(15,18) for i in x]
# 创建画布
plt.figure(figsize=(20,8),dpi=100)
plt.plot(x,y,color="r",linestyle="--",label = "北京")
plt.plot(x,y_beijigng,label="上海")
x_ticks_label = ["11点{}分".format(i) for i in x]
y_ticks_label = range(40)

plt.xticks(x[::5],x_ticks_label[::5])  #从头到尾5个5个
plt.yticks(y_ticks_label[::5])
plt.title("中午某城市温度变化",fontsize=20)

# 添加网格显示
plt.grid(True,linestyle="--",alpha=1)

# 显示图例
plt.legend(loc="best")

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

# 图像显示
plt.show()

image.png

多个坐标显示图像

# 实现基础绘图功能
import matplotlib.pyplot as plt
import random
from pylab import  mpl

mpl.rcParams["font.sans-serif"]=["SimHei"]
mpl.rcParams["axes.unicode_minus"] = False
# 准备数据
x = range(60)
y_beijigng = [random.uniform(1,3) for  i in x]
y= [random.uniform(15,18) for i in x]

fig,axes = plt.subplots(nrows=1,ncols=2,figsize=(20,8),dpi =100)
axes[0].plot(x,y,color="r",linestyle="--",label = "北京")
axes[1].plot(x,y_beijigng,label="上海")

x_ticks_label = ["11点{}分".format(i) for i in x]
y_ticks_label = range(40)

axes[0].set_xticks(x[::5])
axes[0].set_yticks(y_ticks_label[::5])
axes[0].set_xticklabels(x_ticks_label[::5])
axes[1].set_xticks(x[::5])
axes[1].set_yticks(y_ticks_label[::5])
axes[1].set_xticklabels(x_ticks_label[::5])


# 添加网格显示
axes[0].grid(True,linestyle="--",alpha=1)
axes[1].grid(True,linestyle="--",alpha=1)

axes[0].set_xlabel("时间")
axes[0].set_ylabel("温度")
axes[0].set_title("中午某城市温度变化",fontsize=20)


axes[1].set_xlabel("时间")
axes[1].set_ylabel("温度")
axes[1].set_title("中午某城市温度变化",fontsize=20)
# 创建画布
# plt.figure(figsize=(20,8),dpi=100)
# plt.plot(x,y,color="r",linestyle="--",label = "北京")
# plt.plot(x,y_beijigng,label="上海")
# x_ticks_label = ["11点{}分".format(i) for i in x]
# y_ticks_label = range(40)


# 图像显示
plt.show()

image.png