我刚开始学习python,所以如果代码不合适,请告诉我。
我在情节的传奇中得到了一小部分。但由于标签的位置没有变化,看起来很奇怪:
关于这个情节的我的代码如下:
datalist = [(np.loadtxt(filename, skiprows=1), label) for filename,label in list_of_files]
for data, label in datalist:
pylab.errorbar(abs(data[:,0]), abs(data[:,3]), yerr = data[:,4], fmt = 'o', label=r'$\frac{U_1+U_2}{2}$')
legend = pylab.legend(loc = 2, numpoints = 1)
frame = legend.get_frame()
frame.set_facecolor('0.95')
pylab.xlabel(r'I$\,$[$\mathrm{\mu}$A]')
pylab.ylabel('U [V]')
pylab.ylim([0,0.1])
pylab.show()
我使用了范围,因为绘图中的不同文件会有更多的值,我只是想在添加其他数据之前修复标签的位置。
如何更改图例中标签的位置?
答案 0 :(得分:0)
也许你可以尝试类似下面的内容。在stackoverflow上找到另一个答案!
# Create legend
plt.plot(x, y, label = 'label_name')
leg = plt.legend( loc = 'upper right')
plt.draw() # Draw the figure so you can find the positon of the legend.
# Get the bounding box of the original legend
bb = leg.get_bbox_to_anchor().inverse_transformed(ax.transAxes)
# Change to location of the legend.
xOffset = 1.5
bb.x0 += xOffset
bb.x1 += xOffset
leg.set_bbox_to_anchor(bb, transform = ax.transAxes)
# Update the plot
plt.show()
转到此处获取更多信息:Move and resize legends-box in matplotlib