如何使用matplotlib在x轴上添加单个标签刻度?

13

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

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

我该如何在x轴的1.5处添加一个标记,并标注为"here is 1.5"?

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

1个回答

17

这样做会起作用:

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轴刻度:

enter image description here

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()

在这里输入图像描述 如有需要,您可以尝试调整标签的旋转角度。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接