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).

16
demandé sur KatyB 2012-06-26 20:49:20

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).

12
répondu ioums 2012-06-26 17:19:29
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.

6
répondu mrsoltys 2017-05-23 11:33:13

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')
3
répondu H.Muster 2012-06-26 18:02:39

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