Log axis on imagesc
Afficher commentaires plus anciens
I've plotted an image using imagesc:
figure;
imagesc([pmin pmax], [vmax vmin],flipud(result.^2))
xlabel('Period (s)','FontSize',20)
ylabel('Velocity (m.s^-^1)','FontSize',20)
set(gca,'ydir','normal')
and would like to make the x-axis logarithmic. If I just do set(gca, 'XScale','log') it changes the scale but not the image. How can I change the image and the scale? I've tried plotting with surf as well, but that's not producing what I want. My xscale values are 2:0.1980:101, so I'm not sure what the best way of plotting this is. Any suggestions are much appriciated!
Réponses (1)
Sean de Wolski
le 10 Mar 2014
I think what you want is to use surf with x and y set to your values.
surf(1:100,1:100,magic(100));
set(gca,'XScale','log');
view(2)
If this isn't correct, could you attach your data in a zip file?
2 commentaires
Cl
le 10 Mar 2014
Sean de Wolski
le 10 Mar 2014
I'm not able to reproduce what you're describing (guessing at pmin, pmax)
surf(1:100,1:100,magic(100));
set(gca,'XScale','log');
view(2)
set(gca,'XTick',2:(pmax-pmin)/10:102,'XTicklabel',round(2:(pmax-pmin)/10:102))
Catégories
En savoir plus sur Image Arithmetic dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!