2012-06-08 7 views
7

Próbuję zmienić rozmiar czcionki tytułu istniejącej legendy na różowym, lub "polarnym", działce. Większość kodu została napisana przez kogoś innego, kto jest nieobecny. Dodałem: -Zmiana rozmiaru czcionki tytułu legendy w Pythonie pylab róża/wykres polarny

ax.legend(title=legend_title) 
setp(l.get_title(), fontsize=8) 

dodać tytuł „legend_title”, która jest zmienna, że ​​użytkownik wejdzie na ciąg w innej funkcji, która używa tego kodu. Druga linia tego nie zwraca błędu, ale nie wydaje się, aby cokolwiek zrobić. Pełny kod znajduje się poniżej. "Rose" i "RoseAxes" to moduły/funkcje napisane przez kogoś. Czy ktoś wie o sposobie zmiany rozmiaru czcionki tytułu legendy? Znalazłem kilka przykładów dla normalnych fabuł, ale nie mogę znaleźć żadnych dla działek róż/polarnych.

from Rose.RoseAxes import RoseAxes 
from pylab import figure, title, setp, close, clf 
from PlotGeneration import color_map_xml 

fig = figure(1) 
rect = [0.02, 0.1, 0.8, 0.8] 
ax = RoseAxes(fig, rect, axisbg='w') 
fig.add_axes(ax) 
if cmap == None: 
    (XMLcmap,colors) = color_map_xml.get_cmap('D:/HRW/VET/HrwPyLibs/ColorMapLibrary/paired.xml',255) 
else: 
    XMLcmap = cmap 

bqs = kwargs.pop('CTfigname', None) 
ax.box(Dir, U, bins = rose_binX, units = unit, nsector = nsector, cmap = XMLcmap, lw = 0, **kwargs) 

l = ax.legend() 
ax.legend(title=legend_title) 
setp(l.get_texts(), fontsize=8) 
setp(l.get_title(), fontsize=8) 

Dzięki za wszelką pomoc

+1

dla wszystkich zainteresowanych, oto co zmieniliśmy go, aby to działało: L = ax.legend (title = legend_title) setp (l.get_texts(), fontsize = 12) setp (l.get_title(), fontsize = 12) – LaurieW

Odpowiedz

3

Jest podobne pytanie tutaj: How to set font size of Matplotlib axis Legend?

udaje mi się zmienić tytuł na rozmiar czcionki tytułu stosując drugą odpowiedź, które okazały się być najprostszą jeden. Możesz także zmienić tytuł koloru i inne właściwości. Mam następujący kod:

leg=legend((x3, x4,),shadow=False, loc=loca,title=labelE,prop={'size':8}) 
leg.draw_frame(False) 
ax111.get_legend().get_title().set_fontsize('36') 
ax111.yaxis.set_tick_params(labelsize=10) 

Domyślam się, że jest możliwe być zmiana żadnego majątku tytułem zastępując set_fontsize („#”) do innego parametru wymienione tutaj:

http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.legend

5

szybki sposób dostosować wielkość czcionek w legendy i legendy tytułem:

import numpy as np 
import pylab as plt 

f,ax = plt.subplots() 
x = np.arange(10) 
y = np.sin(x) 
ax.plot(x,y, label = 'sin') 

leg = ax.legend(fontsize = 'large') 
leg.set_title("title", prop = {'size':'x-large'}) 

f.show() 
Powiązane problemy