how to use fraction and symbols in yticklabel?

25 visualizzazioni (ultimi 30 giorni)
I want a plot to have units of \frac{e^2}{2\hbar} in stead of 1, 2, 3,...
But I can only insert the math symbols in an ordinary label and not in a yticklabel.
The plot should have an y-axis with the values 0, \frac{e^2}{2\hbar}, 2 \frac{e^2}{2\hbar}.
How do I use the yticklabel with math symbols?
figure
plot(xdata,ydata)
set(gca,'ytick',[0, 1, 2])
set(gca,'yticklabel',{'0','$$\frac{e^2}{2\hbar}$$','$$2 \frac{e^2}{2\hbar}$$','Interpreter','latex'},'FontSize',13)
title('The conductivity','Fontsize',15),
xlabel('Photon energy [eV]','Fontsize',13)
  1 Commento
hamed shorakaei
hamed shorakaei il 6 Ott 2017
The following style is work for labeling. Please use it for your purpose.
ylabel('$\displaystyle\frac{e^2}{2\hbar}$','interpreter','latex')

Accedi per commentare.

Risposta accettata

Orion
Orion il 18 Dic 2014
you can't use latex in yticklabel (unfortunately). you're gonna have to use text if you really want to insert math symbols.
something like :
clear all
figure
xdata = 0:0.01:10;
ydata = sin(2*xdata)+1;
plot(xdata,ydata)
set(gca,'ytick',[0, 1, 2],'yticklabel',[])
tt(1) = text(-0.5,0,'0');
tt(2) = text(-0.5,1,'$$\frac{e^2}{2\hbar}$$');
tt(3) = text(-0.5,2,'$$2 \frac{e^2}{2\hbar}$$');
set(tt,'Interpreter','latex');

Più risposte (1)

dan halbersberg
dan halbersberg il 30 Gen 2016
There is a way but you need to use the 'TickLabelInterpreter' property. Here is an example:
figure()
a = axes;
plot(xdata,ydata);
set(gca,'YTick',[0, 1, 2]);
set(a,'TickLabelInterpreter','latex');
set(gca,'YTickLabel',{'0','$$\frac{\textrm{e^2}}{\textrm{2\hbar}}$$','$$2 \frac{\textrme^3}}{\textrm{2\hbar}}$$'});
ylabel('\bf{Y values}','fontsize',14);
xlabel('\bf{X}','fontsize',14);

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by