Second y-axis on pcolor plot

Is it possible to create a pcolor plot with 2 rays?

Consider the following example:

clear all
temp =  1 + (20-1).*rand(365,12);
depth = 1:12;
time =1:365;

data2 = 1 + (60-1).*rand(12,1); 
time2 = [28,56,84,124,150,184,210,234,265,288,312,342];

figure;
pcolor(time,depth,temp');axis ij; shading interp
hold on 
plot(time2,data2,'w','linewidth',3);

      

Instead of plotting the second dataset on the same y-axis, I would like it to be positioned on its y-axis. Is it possible?

+3


source to share


2 answers


You need to add additional axes at the top of the pcolor axes, align their positions, and then plot. You can set the position of the axes to the top (X) and to the right (Y). Remember to link the X-axes if they assumed they were LINKAXES .

pcolor(time,depth,temp');axis ij; shading interp
ax1 = gca;
%# new axes with plot
ax2 = axes('position',get(ax1,'position'),'color','none');
set(ax2,'YAxisLocation','right', 'XAxisLocation','top')
hold on
plot(ax2,time2,data2,'w','linewidth',3);
hold off
linkaxes([ax1 ax2], 'x');

      



pcolor with line

+1


source


I'm not sure what you mean. If you want the same axes but different y values, give it a try plotyy

. If you want two different axes, try using the command subplot

.



0


source







All Articles