pyplot图例标签被截断

2024-10-03 23:30:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试创建一个图例,它将包含它对应的线的颜色和标签。我当前的代码正在绘制图例,但只绘制标签的第一个字母(D而不是DL11)。我想知道怎样才能让我的绘图停止截断标签。我希望将来能够添加更多的线条和相应的颜色/标签。任何帮助都将不胜感激。谢谢

from numpy import *
import matplotlib.pyplot as plt
import pylab


data = loadtxt("/home/***")
d, tno1, qno1 = data[:,1], data[:,2], data[:,3]                         
d, tno1, qno1 = loadtxt("/home/***", usecols = (1,2,3), unpack=True)


plt.plot(tno1, qno1, label='DL11')
plt.legend( ('DL11') )
plt.show()

Tags: 代码importhomedata颜色字母绘制plt
2条回答

我相信pyplot期待一份传奇人物的名单。像你这样的单子清单

pyplot.legend(['DL11'])

我猜是这样pyplot.legend公司('DL11')获取列表的第一项,即“D”。在

希望有帮助

你碰到了一个有趣的联合国包装问题。在

或者

 plt.legend()

或者

^{pr2}$

会得到预期的结果。在

要理解它为什么这样做,请参阅https://github.com/matplotlib/matplotlib/blob/master/lib/matplotlib/axes/_axes.py#L422处的代码

调用plt.legend(('DL11'))相当于调用属于len(args) == 1plt.legend('DL11')大小写,然后根据行列表对字符串进行zip->;因为只有一行,所以会生成“D”的标签。在

别以为这是个bug,但它很微妙。在

相关问题 更多 >