import matplotlib.pyplot as plt
import numpy as np
from matplotlib.figure import Figure
xaxis = np.array([2, 4, 6, 10, 11, 15])
yaxis = np.array([1, 4, 5, 8, 14, 10])
# figsize = (x, y)
figaround = plt.figure(figsize=(8, 6), facecolor = "m", edgecolor = "c", linewidth = "7")
jb = figaround.add_axes([1,1,1,1])
jb.plot(xaxis, yaxis, "p-k", ms=12, mec="m", mfc="g")
# title
plt.title("Linear Graph", fontsize = 25, color = "k")
plt.xlabel("X-Axis Data", fontsize = 15)
plt.ylabel("Y-Axis Data", fontsize = 15)
# x, y axis limit
plt.ylim(0, 20)
plt.xlim(0, 20)
plt.legend(["Linear Graph"])
plt.show()
在倒数第二行之上,plt.legend(["Linear Graph"])
- 类型错误:“list”对象不可调用 *
这个错误我在这里得到,代码识别图例属性作为列表和没有字符串显示在图形中,我期待的。
enter image description here
基于相同的代码,我期待的事情已经显示在上面的图片. plt.legend(["Linear Graph"])
1条答案
按热度按时间xwbd5t1u1#
我无法在Python 3.8.10和matplotlib 3.6.2版本中重现你的错误。
但是,如果使用
plt.figure()
,则应将线宽作为int
参数传递,而不是str
:此外,请检查将
[1,1,1,1]
传递给add_axes
是否确实是为了您的Axes对象从Figure的右上角和spans outside of it开始。此外,如果仍然出现错误,您可以尝试将图例作为标签添加到图中,如下所示: