XTickLabels中的Pi

Dav*_*ria 2 matlab

我尝试使用http://www.mathworks.com/matlabcentral/fileexchange/23841执行此操作,如下所示:

data=rand(5);

plot(0:pi/4:pi, data,'LineWidth', 3);

format_ticks(gca,{'0', '\pi/4', '\pi/2', '3\pi/4', '\pi'},[],0:pi/4:pi)

ylim([0 1]);
xlabel('My x label')
ylabel('My y label')

fontSize = 20;

set(gca,'FontSize',fontSize)
Run Code Online (Sandbox Code Playgroud)

但是,x轴标签似乎与x刻度标签重叠?有谁看到我做错了什么,或者你能建议一个更好的方法吗?此外,轴标签的字体大小似乎与y刻度标签不同?

----编辑--------不使用format_ticks,这似乎产生了将xticks与xlabel重叠的相同行为:

data=rand(5);

plot(0:pi/4:pi, data,'LineWidth', 3);

format_ticks(gca,{'0', '\pi/4', '\pi/2', '3\pi/4', '\pi'},[],0:pi/4:pi)

ylim([0 1]);
xlabel('My x label')
ylabel('My y label')

fontSize = 20;
set(gca,'FontSize',fontSize,'Font','symbol')
Run Code Online (Sandbox Code Playgroud)

Cro*_*ley 7

此代码应显示带有pi符号的刻度.两个轴都将标有Symbol字体.

x=[-2*pi():.1:2*pi()];
plot(x,pi*sin(x))

set(gca,...
 'xlim',[-2*pi() 2*pi()],...
 'xtick',[-2*pi():pi()/2:2*pi()],...
 'xticklabel',{'-2p' '-3p/2' '-p' '-p/2' '0' 'p/2' 'p' '3p/2' '2p'},...
 'ylim',[-pi() pi()],...
 'ytick',[-pi():pi()/2:pi()],...
 'yticklabel',{'-p' '-p/2' '0' 'p/2' 'p'},...
 'fontname','symbol',...
 'fontsize',20)

xlabel('angle \phi from -2\pi to 2\pi',...
 'fontname','helvetica',...
 'fontsize',30)
ylabel('\pi*sin(\phi)',...
 'fontname','helvetica')
Run Code Online (Sandbox Code Playgroud)

机器人轴的相同字体

对于不同轴的不同字体:

x=[-2*pi():.1:2*pi()];
ax1=axes;
ax2=axes;
plot(x,sin(x),'parent',ax1)

set(ax1,...
 'xlim',[-2*pi() 2*pi()],...
 'xtick',[],...
 'xticklabel',{},...
 'ylim',[-1 1],...
 'ytick',[-1:.5:1],...
 'yticklabel',{'-a' '-a/2' '0' 'a/2' 'a'},...
 'fontsize',20)

ylabel(ax1,'a\cdotsin(\phi)',...
 'fontname','helvetica',...
 'fontsize',30)

set(ax2,...
 'xlim',[-2*pi() 2*pi()],...
 'xtick',[-2*pi():pi()/2:2*pi()],...
 'xticklabel',{'-2p' '-3p/2' '-p' '-p/2' '0' 'p/2' 'p' '3p/2' '2p'},...
 'ylim',[-1 1],...
 'ytick',[],...
 'yticklabel',{},...
 'fontname','symbol',...
 'fontsize',20,...
 'position',get(ax1,'position'),...
 'color','none')

xlabel(ax2,'angle \phi from -2\pi to 2\pi',...
 'fontname','helvetica')
Run Code Online (Sandbox Code Playgroud)

每个轴的不同字体