Welcome to kimi's blog

Python可视化Matplotlib折线图plot用法详解

上海和北京温度展示

参数说明

参数 接收值 说明 默认值
x,y array 表示 x 轴与 y 轴对应的数据
color string 表示折线的颜色 None
marker string 表示折线上数据点处的类型 None
linestyle string 表示折线的类型 -
linewidth 数值 线条粗细:linewidth=1.=5.=0.3 1
alpha 0~1之间的小数 表示点的透明度 None
label string 数据图例内容:label=‘实际数据' 1None

代码呈现

import matplotlib.pyplot as plt
import random,io
from pylab import mpl
import numpy as np

# 画出温度变化图

# 设置显示中文字体
mpl.rcParams["font.sans-serif"] = ["SimHei"]

# 设置正常显示符号
mpl.rcParams["axes.unicode_minus"] = False

#  准备x.y 坐标的数据
x= range(60)
y= [random.uniform(15,30) for i in x]
y_beijing = [random.uniform(10,20) for i in x]
space = np.linspace(0,50,60)
y_cos = np.cos(space*1000)   # 
# # 创建画布
plt.figure(figsize=(20,8),dpi=80)

# 绘制折线图
plt.plot(x,y,label='上海')
# 使用多次plot可以画多个折线
plt.plot(x,y_beijing,color='r',linestyle='--',label='北京')  # ls(linestyle)  线条风格
plt.plot(x,y_cos,ls='-',lw=2,label='cosine',color='purple')  # lw 是线宽度 

# 构造x轴、y轴刻度标签
x_ticks_label = [f'11点{i}分' for i in x]
y_ticks_label = range(-10,45) 
plt.xticks(x[::10],x_ticks_label[::10])
plt.yticks(y_ticks_label[::5])

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

# 添加标题、x轴、y轴信息
plt.xlabel('时间',loc='right',labelpad=0.1)
plt.ylabel('温度',loc='top')
plt.title('上海中午11:00--12:00之间的温度变化图示',fontsize=20)


# 保存图像为BytesIO对象
# img_buffer = io.BytesIO()
# plt.savefig(img_buffer,format='png')
# img_buffer.seek(0)
#  添加图例
plt.legend(loc="best")

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



# # 显示图像
plt.show()


posted @ 2024-11-14 15:44  魔女宅急便  阅读(297)  评论(0)    收藏  举报
Title