python 如何在matplotlib中标记一行?

eh57zj3b  于 2023-05-16  发布在  Python
关注(0)|答案(3)|浏览(170)

我遵循了文档,但仍然无法标记一行。

plt.plot([min(np.array(positions)[:,0]), max(np.array(positions)[:,0])], [0,0], color='k', label='East') # West-East
plt.plot([0,0], [min(np.array(positions)[:,1]), max(np.array(positions)[:,1])], color='k', label='North') # South-North

在上面的代码片段中,我试图绘制出北方向和东方向。
position包含要绘制的点。

但我最终得到两条没有标签的直线如下:

哪里出了问题?

iqxoj9l9

iqxoj9l91#

参数label用于设置将在图例中显示的字符串。例如,考虑以下片段:

import matplotlib.pyplot as plt
  plt.plot([1,2,3],'r-',label='Sample Label Red')
  plt.plot([0.5,2,3.5],'b-',label='Sample Label Blue')
  plt.legend()
  plt.show()

这将绘制两条线,如图所示:

箭头函数支持标签。请检查此链接:http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.arrow

pes8fvy9

pes8fvy92#

在添加label属性时,不要忘记添加**.legend()**方法。

import matplotlib.pyplot as plt
plt.plot([1,2],[3,5],'ro',label='one')
plt.plot([1,2],[1,2],'g^',label='two')
plt.plot([1,2],[1,6],'bs',label='three')
plt.axis([0,4,0,10])
plt.ylabel('x2')
plt.xlabel('x1')
plt.legend()
plt.show()

vwkv1x7d

vwkv1x7d3#

这应该可以工作:

plt.legend(YourDataFrame.columns)

相关问题