Les polices de caractères Latex dans matlab
est-il possible de convertir la police d'un graphe matlab pour qu'elle soit la même que les polices latex. Par exemple, je peux modifier la police d'une parcelle par:
x = -pi:.1:pi;
y = sin(x);
plot(x,y)
set(gca,'FontName','Helvetica');
Est-il possible de faire la même chose mais pour le latex polices (je dis latex polices que je ne suis pas sûr du nom exact de la police de latex utilise comme base de la police).
7 réponses
pour tout objet de texte, vous avez juste besoin de définir la propriété 'Interpreter' à 'latex'. Ainsi, par exemple, vous pourriez faire
xlabel('$$\int_0^x\!\int_y dF(u,v)$$','Interpreter','latex');
Pour les étiquettes de graduation, c'est plus difficile, bien qu'il puisse y avoir des fichiers disponibles pour le rendre plus facile (exemple).
set(0,'defaulttextinterpreter','latex')
Vous pouvez aussi télécharger une version de Computer Modern (la famille LaTeX Font) et l'installer sur votre machine. Les Techniques peuvent varier si vous utilisez windows ou mac, pour Mac vous devrez télécharger la version OTF et l'ajouter dans le FontBook (Cmd-Space: FontBook)
suivant, redémarrez Matlab
enfin, vous pouvez utiliser le LaTeX Police dans Matlab:
set(0,'DefaultTextFontname', 'CMU Serif')
set(0,'DefaultAxesFontName', 'CMU Serif')
c'est une bonne solution pour avoir des polices constantes dans vos tick-labels, bien qu'elle ait quelques difficultés à exporter dans certains formats.
Vous pouvez définir la police dans les chaînes latex. Par exemple, pour passer d'une police serif (Romaine) à une police sans serif (Helvetica, je suppose):
text(0.5, 0.8, '\textsf{sans serif}','interpreter','latex')
text(0.5, 0.7, '\textrm{roman}','interpreter','latex')
text(0.5, 0.6, '$$\mathsf{math\,\,mode\,\,sans\,\,serif}$$','interpreter','latex')
text(0.5, 0.5, '$$\mathrm{math\,\,mode\,\,roman}$$','interpreter','latex')
pour la mise en correspondance des polices (y compris kerning de style LaTeX, ligatures, etc.), le texte de la figure Matlab doit être composé avec LaTeX. laprint script, qui utilise psfrag