每个轴使用addaxis两个图

时间:2014-09-08 07:59:31

标签: matlab variables plot axis

我想在一个图中绘制三个变量(温度,盐度,叶绿素)。数据分为两个变量"羽流"和" P7_3m"。它们都是具有列向量的8X5矩阵,

[date salinity temperature attenuation chlorophyll].    

我从http://www.mathworks.com/matlabcentral/fileexchange/9016-addaxis获得了ADDAXIS的成功。

问题是我想为三个变量中的每一个绘制相同颜色的两条线(一条实线,另一条虚线),以比较羽流与P7_3m之间的差异。 x轴是" xt"标有"月"。下面是我的代码并且不起作用,因为在使用ADDAXIS之后,轴手柄返回到原始的第一个绘图轴。有没有办法访问ADDAXIS绘制的轴?所以我可以在与ADDAXIS创建的实线相同的轴上绘制虚线?

感谢您的帮助和时间。提前谢谢!

figure; % start making the figure
ss=20;  % setting up the plot
set(0,'DefaultAxesFontSize', ss)
set(0,'DefaultLineLineWidth',3)

months={'Jan','Feb','Mar','Apr','May','Jun','Jul','Aug'}; % x axis
xt=[1:length(months)];
set(gca,'xtick',xt)
set(gca,'xticklabel',months, 'fontsize', ss)
plot(xt,plume(:,2),'b')  % plot first plot, salinity
hold on
plot(xt,P7_3m(:,2),'--b')
haxes1 = gca;
set(haxes1,'XColor','k','YColor','b')
addaxis(xt,plume(:,3),'r')
plot(xt,P7_3m(:,3),'--r')
addaxis(xt,plume(:,5),[0 12],'color',[0 0.5 0])
plot(xt,P7_3m(:,5),'color',[0 0.5 0])
xlabel('months')
ylabel('Practical Salinity') 
addaxislabel(2,'Potential Temperature (^{\circ}C)')
addaxislabel(3, 'Chlorophyll a Fluorescence (ug/l)')

1 个答案:

答案 0 :(得分:0)

您似乎需要使用addaxisplot。这应该这样做:

figure; % start making the figure
ss=20;  % setting up the plot
set(0,'DefaultAxesFontSize', ss)
set(0,'DefaultLineLineWidth',3)
hold on

months={'Jan','Feb','Mar','Apr','May','Jun','Jul','Aug'}; % x axis
xt=[1:length(months)];
set(gca,'xtick',xt)
set(gca,'xticklabel',months, 'fontsize', ss)

% Plot on first axis.
plot(xt,plume(:,2),'b')  % plot first plot, salinity
plot(xt,P7_3m(:,2),'--b')
set(gca,'XColor','k','YColor','b')

% Plot on second axis.
addaxis(xt,plume(:,3),'r')
addaxisplot(xt,P7_3m(:,3),2,'--r')

% Plot on third axis.
addaxis(xt,plume(:,5),[0 12],'color',[0 0.5 0])
addaxisplot(xt,P7_3m(:,5),3,'--','color',[0 0.5 0])

% Add labels.
xlabel('months')
addaxislabel(1, 'Practical Salinity') 
addaxislabel(2, 'Potential Temperature (^{\circ}C)')
addaxislabel(3, 'Chlorophyll a Fluorescence (ug/l)')

顺便说一下,如果你做一个独立的例子,它确实很有帮助。在这种情况下,如果您为plumeP7_3m添加了一些虚拟数据,那就太棒了。在这种情况下,这不是一个大问题,因为你描述了它们,我只是使用rand生成一些东西,但也许会有所帮助。