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

the*_*man 9 python matplotlib

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

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

我怎样才能在 x 轴的值 1.5 处添加一个刻度,并带有标签“这里是 1.5”?

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

Rob*_*bie 11

像这样的事情会起作用:

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()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

如果要添加额外的 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()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明 如果需要,您可以使用标签旋转。