子画布/坐标轴界限/坐标轴标签/画布标题

子画布

使用plt.grid方法可以开始网格线,使用plt面向对象的方法,创建多个子图显示不同网格线

  1. lw代表linewidth 线的粗细
  2. alpha 表示线的透明度
  3. color 表示颜色
  4. axis 显示轴向
plt.grid(axis='y')

在这里插入图片描述

axes = plt.subplot(111)
axes.grid(axis='both')

在这里插入图片描述

plt.figure(figsize=(10,5))
ax1 = plt.subplot(2,2,1)
ax1.grid(axis='y')

ax2 = plt.subplot(2,2,2)
# html颜色 red blue green gray black white purple pink orange yellow 
# RGB元组  (0.3, 0.6, 0.7)  np.random.random(size=(N, 3)) 生成n个颜色
# 十六进制颜色  "#00aaff"
# 颜色缩写  r  b  g k
ax2.grid(color=np.random.random(size=3))

ax3 = plt.subplot(2,2,3)
# ax3.grid(linewidth=3)
ax3.grid(lw=5)

ax4 = plt.subplot(2,2,4)
ax4.grid(alpha=0.3)

在这里插入图片描述

colors = np.random.random(size=(3,3))
plt.figure( facecolor=colors[0])

plt.subplot(facecolor=colors[1])

plt.grid(color=colors[2])

在这里插入图片描述

坐标轴界限

plt.axis('xxx') 'tight''off''equal'……
设置坐标轴类型
关闭坐标轴
xlim方法和ylim方法
除了plt.axis方法,还可以通过xlim,ylim方法设置坐标轴范围
X、Y轴坐标刻度
plt.xticks()和plt.yticks()方法
需指定刻度值和刻度名称 plt.xticks([刻度列表],[名称列表])
支持fontsize、rotation、color等参数设置

例子:

plt.figure(figsize=(10,5))
plt.subplot(facecolor=np.random.random(size=3))
plt.plot(x, np.sin(x))
plt.grid()

plt.xticks([0,np.pi, 2*np.pi], ["0","Πabdfef", "2Π"], fontsize=20, color=np.random.random(size=3), rotation=90)
plt.yticks([1,0,-1], ["max","0","min"])
plt.show()

在这里插入图片描述

面向对象风格

# 面向对象风格
ax = plt.subplot(111, facecolor=np.random.random(size=3))
ax.grid(color=np.random.random(size=3))

# 调整刻度边界
ax.axis([-1,1,-2,2])

# 分别设置x\y轴刻度边界
# ax.set_xlim()
# ax.set_ylim()

# 调整刻度及标签
ax.set_xticks([-1,0,1])
ax.set_xticklabels(["left","middle","right"], fontsize=20)

ax.set_yticks([2,0,-2])
ax.set_yticklabels(["max","middle","min"], fontsize=20, rotation=90)

在这里插入图片描述

例子:
plt.figure(figsize=(10,4))
plt.plot(x, np.sin(x))

调整y\x轴的刻度边界
plt.ylim([-1., 2.])
plt.xlim([0., np.pi])

axes 表示的画布
axis 表示的是轴
也可以使用axis

plt.axis([xmin,xmax,ymin,ymax])
plt.axis([-2.,3., 1/2., 1.])

在这里插入图片描述

f = lambda x:(1-x**2)**0.5
x = np.linspace(-1,1, 100)

plt.plot(x, f(x))
plt.plot(x, -f(x))

# off
# scaled equal image tight auto
plt.axis('scaled')

# 关闭轴标签
plt.axis('off')
plt.show()

在这里插入图片描述

坐标轴标签

xlabel方法和ylabel方法
plt.ylabel(‘y = x^2 + 5’,rotation = 60)旋转

color 标签颜色
fontsize 字体大小
rotation 旋转角度

例子:

plt.plot(x, f(x), x, -f(x))
plt.axis('equal')

# 关于字体的设置,大部分函数都支持fontdict属性字典对字体进行设置
plt.xlabel("X-label", color=np.random.random(size=3), fontsize=16, rotation=45,)
plt.ylabel("Y-label", color=np.random.random(size=3),  fontdict={
    "fontsize":30,
    "rotation":45
})
plt.show()

在这里插入图片描述
例子2:

ax = plt.subplot()
ax.grid()
ax.plot(x, f(x), x, -f(x))
ax.axis('equal')

ax.set_xlabel("X-Label", fontdict={
    "fontsize":30,
    "color":np.random.random(size=3)
})
ax.set_ylabel("Y-Label", fontsize=20, rotation=45, color=np.random.random(size=3))
plt.show()

在这里插入图片描述

画布标题

plt.title()方法

loc {left,center,right}
color 标签颜色
fontsize 字体大小
rotation 旋转角度

例子:

plt.title("AXES TITLE", fontdict={
    "fontsize":40,
    "color":np.random.random(size=3),
    "verticalalignment": 'baseline',
    'horizontalalignment': "center",
    
})

在这里插入图片描述

plt.title("AXES TITLE", loc="right", fontsize=40)

在这里插入图片描述

总结:

# 获取画板
figure = plt.figure(figsize, facecolor)

# 获取画布
ax = figure.add_subplot(loc, facecolor)
plt.subplot(loc)

# 添加网格
plt.grid(axis, color, linwidth, alpha, linestyle)
ax.grid()

# 坐标轴界限
plt.xlim([xmin, xmax])
plt.ylim([ymin, ymax])
plt.axis([xmin, xmax, ymin, ymax])

plt.axis('off\equal\scaled\image')

# 轴刻度、刻度标签
plt.xticks([t1, t2...], [label1,label2...])
plt.yticks()

ax.set_xticks([t1, t2...])
ax.set_xticklabels([label1, label2...], fontsize, color, rotation, fontdict)
ax.set_yticks()
ax.set_yticklabels()


# 坐标轴标签
plt.xlabel(s, fontsize, color, rotation, fontdict)
plt.ylabel()
ax.set_xlabel()
ax.set_ylabel()


# 画布标题
plt.title(s, fontsize, color, rotation, fontdict)
ax.set_title(s, fontsize, color, rotation, fontdict)

# 颜色
html颜色
十六进制颜色
RGB元组
html颜色缩写
发布了58 篇原创文章 · 获赞 0 · 访问量 477

猜你喜欢

转载自blog.csdn.net/qq_41170489/article/details/104010619
今日推荐