当前位置: 首页 > news >正文

matplotlib中pyplot的基本使用

基本绘图

import random as r
from matplotlib import pyplot as plt

x=range(1,21)
y=[r.randint(1,40) for i in range(20)]
# 传入x,y坐标数据
plt.plot(x,y)
# 显示图像
plt.show()

设置图片大小和保存图片

import random as r
from matplotlib import pyplot as plt

x=range(1,21)
y=[r.randint(1,40) for i in range(20)]

#设置图片尺寸和清晰度
plt.figure(figsize=(20,8),dpi=80)

plt.plot(x,y)

#保存图片
plt.savefig(r'C:\Users\xxx\Desktop\1.png')

plt.show()

设置x坐标和y坐标显示内容

import random as r
from matplotlib import pyplot as plt

x=range(1,21)
y=[r.randint(i,200) for i in range(20)]
plt.figure(figsize=(20,8),dpi=80)

plt.plot(x,y)


# x坐标显示内容设置方式
_xtick_labels=["{}岁".format(i) for i in x]
plt.xticks(x,_xtick_labels)

#plt.xticks(x,_xtick_labels,rotation=90)rotation关键字用来表示将文字旋转多少度

# y根据自己需求设置
# _ytick_labels=["{}cm".format(i) for i in y]
# plt.yticks(y,_ytick_labels)


plt.savefig(r'C:\Users\xxx\Desktop\1.png')
plt.show()

 

可以发现坐标出现了乱码,添加下列代码可以防止中文乱码

import random as r
from matplotlib import pyplot as plt

#防止中文乱码
from matplotlib import rcParams
rcParams['font.sans-serif'] = ['SimHei']
rcParams['axes.unicode_minus'] = False

x=range(1,21)
y=[r.randint(i,200) for i in range(20)]
plt.figure(figsize=(20,8),dpi=80)

plt.plot(x,y)


_xtick_labels=["{}岁".format(i) for i in x]
plt.xticks(x,_xtick_labels)

plt.savefig(r'C:\Users\于昊炜\Desktop\1.png')
plt.show()

 

设置x轴标题,y轴标题,顶部标题

import random as r
from matplotlib import pyplot as plt

from matplotlib import rcParams
rcParams['font.sans-serif'] = ['SimHei']
rcParams['axes.unicode_minus'] = False

x=range(1,21)
y=[r.randint(i,200) for i in range(20)]
plt.figure(figsize=(20,8),dpi=80)

plt.plot(x,y)


_xtick_labels=["{}岁".format(i) for i in x]
plt.xticks(x,_xtick_labels)

# 用来设置x轴标题,y轴标题,顶部标题
plt.xlabel("年龄")
plt.ylabel("身高")
plt.title("示例标题")

plt.savefig(r'C:\Users\于昊炜\Desktop\1.png')
plt.show()

 

 如何显示多条线,以及添加说明

import random as r
from matplotlib import pyplot as plt

from matplotlib import rcParams
rcParams['font.sans-serif'] = ['SimHei']
rcParams['axes.unicode_minus'] = False

x=range(1,21)
y=[r.randint(i,200) for i in range(20)]
y2=[r.randint(1,100) for i in range(20)]


plt.figure(figsize=(20,8),dpi=80)

#给线条设置label才能添加图例
#多次plot就可以画多条线
plt.plot(x,y,label="小明")
plt.plot(x,y2,label="小红")

#添加图例,loc设置位置
plt.legend(loc="upper left")

_xtick_labels=["{}岁".format(i) for i in x]
plt.xticks(x,_xtick_labels)

plt.xlabel("年龄")
plt.ylabel("身高")
plt.title("示例标题")

plt.savefig(r'C:\Users\于昊炜\Desktop\1.png')
plt.show()

 

此外plot中还可以设置多种样式

plt.plot(x,y,label="自己",color="cyan",linestyle="-.",linewidth="5")
#color可以用来设置颜色,linestyle设置样式,linewidth设置线条粗细

最后一个知识点,设置网格线的数量取决于xtick和ytick

import random as r
from matplotlib import pyplot as plt

from matplotlib import rcParams
rcParams['font.sans-serif'] = ['SimHei']
rcParams['axes.unicode_minus'] = False

x=range(1,21)
y=[r.randint(i,200) for i in range(20)]
y2=[r.randint(1,100) for i in range(20)]


plt.figure(figsize=(20,8),dpi=80)

plt.plot(x,y,label="小明",linewidth="5")
plt.plot(x,y2,label="小红")

plt.legend(loc="upper left")

_xtick_labels=["{}岁".format(i) for i in x]
plt.xticks(x,_xtick_labels)

plt.yticks(list(range(10,200,10)))

plt.xlabel("年龄")
plt.ylabel("身高")
plt.title("示例标题")

plt.grid(alpha=1)#设置网格线,alpha设置网格清晰度

plt.savefig(r'C:\Users\于昊炜\Desktop\1.png')
plt.show()

 

相关文章:

  • jvm 线程监控调试
  • Qt的isVisible ()函数介绍和判断窗口是否在当前界面显示
  • 理解 package.json :在基于 TypeScript 开发 Babylon.js 项目中的关键角色
  • DeepSeek底层揭秘——知识图谱与语料库的联邦学习架构
  • 今日AI和商界事件(2025-02-13)
  • 实现pytorch注意力机制-one demo
  • 业务干挂数据库,Oracle内存分配不足
  • css:position
  • K8s之存储卷
  • Prompt通用技巧
  • redis sentinel模式 与 redis 分片集群 配置
  • (五)Spring Boot学习——spring security +jwt使用(前后端分离模式)
  • iOS实现生物识别
  • git: 如何查询某个文件或者某个目录的更新历史
  • 服务器之连接简介(Detailed Explanation of Server Connection)
  • 网络编程01 - 速通计网知识点
  • python学习第十四天之机器学习名词介绍
  • RNN复兴!性能反超Transformer,训练速度提升1300倍!
  • 数据结构 栈和队列
  • 本地部署DeepSeek + AnythingLLM 搭建高效安全的个人知识库
  • 网站建设就选/创建免费网站
  • 电子商务网站推广的界定/帮人推广注册app的平台
  • 公司做网站提供产品加盟费/石家庄seo顾问
  • 黄页网址大全/涟源网站seo
  • 精仿腾讯3366小游戏门户网站源码织梦最新内核带全部数据!/百度运营平台
  • jquery个人网站开发/erp123登录入口