优秀的编程知识分享平台

网站首页 > 技术文章 正文

matplotlib学习记录:控制坐标轴(matplotlib.pyplot坐标轴设置)

nanyue 2024-10-14 11:32:20 技术文章 8 ℃



图示:



知识点:

1、控制坐标轴的显示

fig,ax = plt.subplots(2,2)
ax1 = ax[0,0]
ax1.spines["right"].set_color("none")
ax1.spines["top"].set_color("none")

2、将bottom坐标轴移动到data的刻度为0的位置

ax1.spines["bottom"].set_position(("data",0))

3、设置刻度的方向

ax.xaxis.set_ticks_position("bottom")
ax.yaxis.set_ticks_position("left")

代码:

import matplotlib.pyplot as plt
import numpy as np
import matplotlib as mpl

mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False

# 数据
x = np.linspace(-2 * np.pi,2 * np.pi,200)
y = np.sin(x)
y1 = np.cos(x)

# 画图
ax = plt.subplot(111)
ax.plot(x,y,ls="-",lw=2,label=r"$\sin(x)#34;)
ax.plot(x,y1,ls="-",lw=2,label=r"$\cos(x)#34;)
# 设置x轴显示区域
ax.set_xlim(-2 * np.pi,2 * np.pi)

# 变更刻度与标签
ticks = [-2 * np.pi,-3 * np.pi / 2,-1 * np.pi,-1 * (np.pi) / 2,0,(np.pi) / 2,np.pi,3*np.pi / 2,2 * np.pi]
labels = [r"$-2\pi#34;,r"$-3\pi/2#34;,r"$-\pi#34;,r"$-\pi/2#34;,"$0#34;,"$\pi/2#34;,"$\pi#34;,"$3\pi/2#34;,"$2\pi#34;]
plt.xticks(ticks,labels)

# 去除轴线
ax.spines["right"].set_color("none")
ax.spines["top"].set_color("none")

# 将bottom轴线放在指定的位置
ax.spines["bottom"].set_position(("data",0))
ax.spines["left"].set_position(("data",0))

ax.xaxis.set_ticks_position("bottom")
ax.yaxis.set_ticks_position("left")

# 显示图例
plt.legend(loc="lower left")
# 显示标题
plt.title(r"$\sin(x)#34; + "和" + r"$\cos(x)#34; + "函数")
plt.show()

Tags:

最近发表
标签列表