
- 1.plot() 绘制曲线图
- 2.scatter() 绘制散点图
- 3.坐标轴的范围与名称
- 4.在显示的图像画参考线
- 5.添加图形内容细节的指向型注释文本
- 6.添加图形内容细节的无指向型注释文本
导入所需模块
import matplotlib.pyplot as plt
import numpy as np
# 准备数据
x = np.linspace(1, 10, 200) # [0,10]之间均匀取出200个数
y = np.sin(x) # y=sin(x)
# 按数据绘制数据
'''将x,y的值绘制成图像,
c='r'线条颜色为红色,
ls='-'线条风格为虚线,
lw=2线条宽度为2,
label='y=sinx' 显示线条信息
'''
plt.plot(x, y, c='r', ls='-', lw=2, label='y=sinx')
# 显示绘制内容
plt.legend() # 显示 label='y=sinx'
plt.show() # 显示绘制完成的图像
2.scatter() 绘制散点图
导入所需模块
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 1000) # [0,10]均匀取出1000个数
y = np.random.randn(1000) # 标准正态分布中随机取出1000个数
plt.scatter(x, y, c='r', s=0.5, label='scatter figure') # 根据x,y 绘制散点图 ,颜色为红色 ,点的大小为0.5
plt.legend() # 显示标签scatter figure
plt.show() # 显示图像
3.坐标轴的范围与名称
# 导入所需模块
import matplotlib.pyplot as plt
import numpy as np
plt.rcParams['font.sans-serif'] = ['SimHei'] # 显示中文标签
plt.rcParams['axes.unicode_minus'] = False #正确显示负数
x = np.linspace(1, 10, 200) # [0,10]之间均匀取出200个数
y = np.sin(x) # y=sin(x)
plt.titile('y=sinx') #图像上方添加标题 y=sinx
plt.xlim(2, 5) # x轴的范围[2, 5]
plt.ylim(-2, 2) # y轴的范围[-2, 2]
plt.xlabel('x的值') # x轴的名称为 x的值
plt.ylabel('sinx的值') # y轴的名称为 sinx的值
plt.plot(x, y) # 绘制图像
plt.show() #显示图像
4.在显示的图像画参考线
# 导入所需模块
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 200) # [0,10]之间均匀取200个数
y = np.sin(x) # y=sinx
plt.plot(x, y) # 绘制图象
plt.grid(ls=':', c='r') # 绘制网格线 格式为':' 颜色为 r红色
plt.axhline(y=0.5, c='y', ls='--', lw=2) # 绘制一条平行于x轴的直线 y=0.5 黄色,格式为'--' 线宽2
plt.axvline(x=2, c='y', ls='--', lw=2) # 绘制一条平行于y轴的直线 x=2 黄色,格式为'--' 线宽2
plt.axhspan(ymin=-0.25, ymax=0.25, facecolor='g', alpha=0.3) # 绘制平行于x轴的区域 [-0.25, 0.25] 绿色 ,透明度0.3
plt.axvspan(xmin=0, xmax=1, facecolor='g', alpha=0.3) # 绘制平行于y轴的区域 [0, 1] 绿色 ,透明度0.3
plt.show() # 显示图像
5.添加图形内容细节的指向型注释文本
# 导入所需模块
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 500) # [0,10]均匀取500个数
y = np.sin(x) # y=sinx
plt.plot(x, y) # 绘制图像
plt.grid(ls=':') # 绘制网格线 样式为':'
plt.axvline(x=np.pi / 2, ls=':', c='r') # 绘制最大值的参考线 x=pi/2
plt.axhline(y=1, ls=':', c='r') # 绘制最大值的参考线 y=1
plt.axvline(x=np.pi * 3 / 2, ls=':', c='g') # 绘制最小值的参考线 x= pi*3/2
plt.axhline(y=-1, ls=':', c='g') # 绘制最小值的参考线 y=-1
plt.annotate('maximum', # 图形内容的注释文本 maximum
xy=((np.pi / 2), 1), # 被注释图形内容的位置坐标
xytext=((np.pi / 2) + 1, 0.8), # 注释文本的位置坐标
weight="bold", # 注释文本的字体粗细风格
color="b", # 注释文本的颜色
arrowprops=dict(arrowstyle="->", connectionstyle="arc3", color="b") # 指示被注释内容的箭头的属性字典
)
plt.annotate('minimum',
xy=((np.pi * 3 / 2), -1),
xytext=((np.pi * 3 / 2) + 1, -0.8),
weight="bold",
color="b",
arrowprops=dict(arrowstyle="->", connectionstyle="arc3", color="b")
)
plt.show() # 显示图像
6.添加图形内容细节的无指向型注释文本
# 导入所需模块
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 200) # [0,10]均匀取200个数
y = np.sin(x) # y=sinx
plt.plot(x, y) # 绘制图像
plt.grid(ls=':') # 显示网格线
plt.text(3, 0.5, 'y=sinx', c='b') # (3,0.5)处添加文本 y=sinx 蓝色字体
plt.show() # 显示图像
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)