How to change the frame size of legend?

Dear all,

I've made a plot (as attached). The problem is the frame of the legeng is
too big that It covers some part of the lines in the figure.
I used a 'x-samll' font size in the legend text, but the problem is that the
space between the lines of different texts is too big that the
whole frame of the legend becomes big.

another question is, the font size of legend text can only be set as
'xx-small' | 'x-small' | 'small' | 'medium' | 'large' | 'x-large' |
'xx-large' , but not specific numbers?

Any ideas about this will be very much appreciated.

############################################### the script:
fig1=plt.figure()
fig1.text(0.5,0.04,'Years since last
burn',ha='center',rotation='horizontal')
fig1.text(0.05,0.45,'Total biomass(gC m-2)',va='center',rotation='vertical')
ax1=fig1.add_subplot(111)
for i in range(7):
   
ax1.plot(np.arange(1,len(ns2['TOTAL_M'][i])+1),ns2['TOTAL_M'][i],g.pline[i],label=bsite.NSlist[i])
ax1.plot(data[:,0],data[:,13],'k.',markersize=10,label='Goulden et
al.,2011')
ax1.plot(wdata[:,0][0:7],wdata[:,6][0:7],'r.',markersize=10,label='Wang et
al.,2003 Dry')
ax1.plot(wdata[:,0][7:14],wdata[:,6][7:14],'g.',markersize=10,label='Wang et
al.,2003 Wet')
leg=ax1.legend(loc='upper left')
ltext = leg.get_texts()
llines = leg.get_lines()
frame = leg.get_frame()
plt.setp(ltext, fontsize='x-small')

Best wishes,

Chao http://old.nabble.com/file/p31918421/CA-NS_BiomassCarbon_modelVSob.png

···


View this message in context: http://old.nabble.com/How-to-change-the-frame-size-of-legend--tp31918421p31918421.html
Sent from the matplotlib - users mailing list archive at Nabble.com.

and also, how can I make only one point for the scatter legend?
if I use

leg=ax1.legend(loc='upper left', numpoints=1)

all the lines will disapper too...

wiswit wrote:

···

Dear all,

I've made a plot (as attached). The problem is the frame of the legeng is
too big that It covers some part of the lines in the figure.
I used a 'x-samll' font size in the legend text, but the problem is that
the space between the lines of different texts is too big that the
whole frame of the legend becomes big.

another question is, the font size of legend text can only be set as
'xx-small' | 'x-small' | 'small' | 'medium' | 'large' | 'x-large' |
'xx-large' , but not specific numbers?

Any ideas about this will be very much appreciated.

############################################### the script:
fig1=plt.figure()
fig1.text(0.5,0.04,'Years since last
burn',ha='center',rotation='horizontal')
fig1.text(0.05,0.45,'Total biomass(gC
m-2)',va='center',rotation='vertical')
ax1=fig1.add_subplot(111)
for i in range(7):
   
ax1.plot(np.arange(1,len(ns2['TOTAL_M'][i])+1),ns2['TOTAL_M'][i],g.pline[i],label=bsite.NSlist[i])
ax1.plot(data[:,0],data[:,13],'k.',markersize=10,label='Goulden et
al.,2011')
ax1.plot(wdata[:,0][0:7],wdata[:,6][0:7],'r.',markersize=10,label='Wang et
al.,2003 Dry')
ax1.plot(wdata[:,0][7:14],wdata[:,6][7:14],'g.',markersize=10,label='Wang
et al.,2003 Wet')
leg=ax1.legend(loc='upper left')
ltext = leg.get_texts()
llines = leg.get_lines()
frame = leg.get_frame()
plt.setp(ltext, fontsize='x-small')

Best wishes,

Chao
http://old.nabble.com/file/p31918421/CA-NS_BiomassCarbon_modelVSob.png


View this message in context: http://old.nabble.com/How-to-change-the-frame-size-of-legend--tp31918421p31918424.html
Sent from the matplotlib - users mailing list archive at Nabble.com.