Python里plt.text()方法在图上标注,为什么没画在坐标轴里?
如下这段代码(我在jupyter notebook里运行)
from matplotlib import pyplot as plt#fig=plt.figure()
for n in range(12):
plt.text(X[n][0],X[n][1],n,color='r',fontsize=25)
实际显示效果是如下,为何没显示在坐标轴里,数据见下面:
里面的X数据如下:
回答:
plt.text()
默认是在 data coordinates 上绘制的。而你的代码上来就直接 plt.text()
,默认的 data coordinates 范围是 [0, 1]
,你的坐标又超出了这个范围,自然会绘制到 axes 外面去。
所以最简单的方式是,在前面指定坐标范围:
python">fig, ax = plt.subplots()# +1/-1是为了将 text 包括在 axes 里,这个可以随意调整
ax.set_xlim(X[:, 0].min() - 1, X[:, 0].max() + 1)
ax.set_ylim(X[:, 1].min() - 1, X[:, 1].max() + 1)
for n in range(2):
ax.text(X[n, 0], X[n, 1], n, color='r', fontsize=25)
以上是 Python里plt.text()方法在图上标注,为什么没画在坐标轴里? 的全部内容, 来源链接: utcz.com/p/938137.html