Ho uno script matplotlib che inizia ...Come caricare il file .ttf in matplotlib usando mpl.rcParams?
import matplotlib as mpl
import matplotlib.pyplot as plt
import matplotlib.font_manager as fm
mpl.rcParams['xtick.labelsize']=16
...
Ho usato il comando
fm.findSystemFonts()
per ottenere un elenco dei caratteri sul mio sistema. Ho scoperto il percorso completo di un file .ttf mi piacerebbe usare,
'/usr/share/fonts/truetype/anonymous-pro/Anonymous Pro BI.ttf'
Ho provato ad utilizzare questo tipo di carattere, senza successo utilizzando i seguenti comandi
mpl.rcParams['font.family'] = 'anonymous-pro'
e
mpl.rcParams['font.family'] = 'Anonymous Pro BI'
cui entrambi tornare qualcosa come
/usr/lib/pymodules/python2.7/matplotlib/font_manager.py:1218: UserWarning: findfont: Font family ['anonymous-pro'] not found. Falling back to Bitstream Vera Sans
Posso usare il dizionario mpl.rcParams per impostare questo carattere nei miei grafici?
EDIT
Dopo aver letto un po 'di più, sembra che questo è un problema generale di determinare il nome della famiglia di font da un file .ttf. È così facile da fare in linux o python?
Inoltre, ho provato ad aggiungere
mpl.use['agg']
mpl.rcParams['text.usetex'] = False
senza alcun successo
grazie. Ho visto la soluzione in [questo] (http://stackoverflow.com/questions/12790284/why-doesnt-matplotlib-use-the-ttf-font-that-i-provide?rq=1) post. Tuttavia, mi piacerebbe cambiare il carattere di tutto il testo sul grafico senza aggiornare ogni comando che produce testo e/o aggiungere comandi per cambiare il testo delle etichette degli assi. Ecco perché preferirei usare mpl.rcParams se possibile. –
che fa il trucco. Grazie! –
Freddo. Grazie per la risposta dettagliata. Aiuta molto! –