问题:如何使用 matplotlib 将单个标记的刻度附加到 x 轴?

假设我在 matplotlib 中设置了一个简单的绘图:

fig, ax = plt.subplots(1,1)
p=ax.plot([1,2,3,4,5], [10,9,8,7,6])

如何在 x 轴的值 1.5 处添加一个刻度,标签为“这里是 1.5”?

我知道我可以使用plt.xticks(),但是我需要指定 all 刻度和标签。

解答

像这样的东西会起作用:

import matplotlib.pyplot as plt

x=range(10)
y=range(10)

fig, ax = plt.subplots(1,1)
p=ax.plot(x,y)
ax.set_xticks([1.5])
ax.set_xticklabels(["Here is 1.5"])
fig.show()

在此处输入图像描述

如果要添加额外的 x-tick:

import matplotlib.pyplot as plt
import numpy as np

x=range(10)
y=range(10)

fig, ax = plt.subplots(1,1)

p=ax.plot(x,y)

xt = ax.get_xticks() 
xt=np.append(xt,1.5)

xtl=xt.tolist()
xtl[-1]="Here is 1.5"
ax.set_xticks(xt)
ax.set_xticklabels(xtl)

fig.show()

在此处输入图像描述如果需要,您可以使用标签旋转。

Logo

Python社区为您提供最前沿的新闻资讯和知识内容

更多推荐