Reputation: 1848
A command of the form xlabel('$<stuff>$','interpreter','latex');
will produce an axis label that is typeset by TeX using a font that is presumably ComputerModern. However, the axis tick labels (e.g., 0, 1, 2, ...) appear in the default font (Helvetica?). I would like to synchronize all the fonts in the figure (preferably to ComputerModern).
Toward that end, I presume that a command of the form set(0,'DefaultAxesFontName', '<fontname>')
may be useful. However, I need to know the exact name or path of the font used by the MATLAB TeX interpreter. How can I retrieve a string value for the font name or a path pointing to the font file for the default figure font and the default TeX-interpreted font?
Upvotes: 8
Views: 3969
Reputation: 1115
You can download the computer modern font, and install it on your local machine. For Mac, you'll need to download the OTF format (i'm not sure on windows machines).
Then, researt matlab, and you can use
set(0,'DefaultAexsFontName', 'CMU Serif')
to make things look like latex font.
Upvotes: 1
Reputation: 10176
You could also plot the axis ticks with latex, look here: http://alex.bikfalvi.com/research/latex_in_matlab_ticks/
Actually, your command was right to mget the default font (when NOT using latex):
get(0,'defaultaxesfontname')
But I didn't find any to get the default latex font. Perhaps it would be possible by using the internal java routines (to get some ideas, look at http://undocumentedmatlab.com/)
Upvotes: 4