我想要的是这样的:

我得到的是这个:

那么如何将标记合并为一个标签?对于线条,对于线条,当然,你可以通过在使用相同的线型时不将标签分配给第二条线来实现它,但是对于标记,你不能,因为它们具有不同的形状.
我尝试了下面的代码,但没有成功...它说“提高AttributeError('未知属性%s'%k)AttributeError:未知属性头宽” ...
xyfrom=[10,620]
xyto=[130,620]
ax.annotate("",xyfrom,xyto,arrowprops=dict(arrowstyle='<->',linewidth = 2, headwidth=10,color = 'k'
))
ax.text((xyto[0]+xyfrom[0])/2-15,(xyto[1]+xyfrom[1])/2+10,"headwidth is too small",fontsize=24)
Run Code Online (Sandbox Code Playgroud) 
从图中可以看出,xlabel和ylabe超出了绘图区域,无法完全显示。
有人可能会说改变字体大小,但我希望字体变大。
下面是代码:
from numpy import *
from pylab import *
tduration=3600
if tduration<960:
time=linspace(0,tduration,120)
else:
n=(tduration-960)/480
time1=linspace(0,960,8,endpoint=False)
time2=linspace(960,tduration,n)
time=hstack((time1,time2))
timemin=time/60
T0=20
Tf=T0+345*log10(8*timemin+1)
timetem=column_stack((timemin,Tf))
savetxt("timetem.txt",timetem,newline='\r\n',fmt='%f')
heatingRate=345/(8*timemin+1)
fig,ax1 =subplots()
ax2 = ax1.twinx()
rc('font',family='Times New Roman')
ax1.plot(timemin,Tf,'k',linewidth=3,label='ISO834 fire curve')
ax2.plot(timemin,heatingRate,'b--',linewidth=3,label='heating rate')
ax1.plot(0, 0,'b--', label = 'heating rate',linewidth=3)
leg=ax1.legend(loc='best',fontsize=24)
leg.get_frame().set_alpha(0.0)
ax1.set_ylabel(r"T$(^{\circ}C)$",fontsize=24,fontname="Times New Roman")
ax2.set_ylabel(r"Heating rate($^{\circ}C$/min)",fontsize=24,fontname="Times New Roman")
ax1.set_xlabel("Time(min)",fontsize=24,fontname="Times New Roman")
ax1.tick_params(labelsize=24)
ax2.tick_params(labelsize=24)
ax1.grid()
show()
fig.savefig('iso834 with hr.png', transparent=True)
Run Code Online (Sandbox Code Playgroud) 我的期望是这样的:

我得到的是这个:
如何在不延长斧头的情况下完全显示所有标记?人们已经提供了扩展斧头的解决方案(/sf/ask/1129572391/# =)?这是唯一的方法吗?