plotting in 2d with imagesc

40 views (last 30 days)
Naema
Naema on 7 Apr 2015
Commented: Ar on 29 Mar 2023
Hi : I have a question about the plot command (imagesc). I am overlapping two fields together and when plotted both of them using (imagesc), I noted that they are flipped vertically. This caused me to have doubt about if the result of the overlap, which I also plotted using (imagesc), is also flipped or not. Please, help me with useful information. thanks

Accepted Answer

Chad Greene
Chad Greene on 7 Apr 2015
You can specify the x and y coordinates of each pixel with imagesc, and use axis xy to ensure the y direction is positive up:
% some fake data
x = (100:200)';
y = (0:.1:20)+ 30;
z = sind(x*y)+x*y/1000;
% plot:
pcolor(z)
figure
imagesc(x,y,z)
axis xy
  3 Comments
DGM
DGM on 28 Mar 2023
The default colormap changed from jet() to parula shortly before this answer was written. It's possible that it simply reflects the default behavior of the software he had installed. It could also have simply been a stale figure property from some prior code. Either way, the colormap in use is not parula(), but jet().
The difference with pcolor() is simply that the edge lines are black, and there are lots of them. You can hide them simply.
% some fake data
x = (100:200)';
y = (0:.1:20)+ 30;
z = sind(x*y)+x*y/1000;
% plot:
pcolor(z)
shading flat
colorbar
colormap(jet(256))
figure
imagesc(x,y,z)
axis xy
colorbar
colormap(jet(256))
Ar
Ar on 29 Mar 2023
Cool, thanks!

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 8 Apr 2015
You can specify whether the lower values of Y are at the top, like for images and matrices, or at the bottom, like for traditional x,y plots:
set(gca, 'YDir', 'reverse'); % or 'normal'

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!