Pregunta

Tengo lo que creo que es un problema simple: tengo una matriz que i Image usando imagesc.Simplemente quiero mostrar un segundo eje y en el lado derecho de la imagen.¿Cómo puedo hacer eso?Ejemplo:

clear all;
aMatrix = rand(20,30);
yAxis1 = 32.*(1:size(aMatrix,1));
yAxis2 = 165.*(1:size(aMatrix,1));
xAxis = 1:size(aMatrix,2);
imagesc(yAxis1, xAxis1, aMatrix);

Los siguientes mostrarán la imagen con yAxis1, en el lado izquierdo.Eso es genial, pero ¿cómo muestro yAxis2 en el lado derecho de la imagen al mismo tiempo ?Gracias.

¿Fue útil?

Solución

  aMatrix = rand(20,30);
  yAxis1 = 32.*(1:size(aMatrix,1));
  yAxis2 = 165.*(1:size(aMatrix,1));
  xAxis = 1:size(aMatrix,2);
  h1=imagesc(xAxis, yAxis1, aMatrix);set(gca,'YDir','normal');
  ax1=gca;
  set(ax1,'YColor','r','YAxisLocation','right');
  set(ax1,'XTickLabel',' ');
  ax2=axes('Position',get(ax1,'Position'),'YAxisLocation','left');
  h2=imagesc(xAxis, yAxis2,aMatrix,'Parent',ax2);
  set(gca,'YDir','normal');

ingrese la descripción de la imagen aquí

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top