Hi,
I have this script that will take data from 31 files, and make a colormap. I wanted to invert the y axis so that the 400 nm show up on the top (its of higher energy). How can I do that?
Thank you!
filenames={'000.mat','007.mat','013.mat','020.mat','027.mat','033.mat','040.mat','047.mat','053.mat','060.mat','067.mat','073.mat','080.mat','087.mat','093.mat','100.mat','107.mat','113.mat','120.mat','127.mat','133.mat','140.mat','147.mat','153.mat','160.mat','167.mat','173.mat','180.mat','187.mat','193.mat','200.mat'};
for i=1:numel(filenames)
load(filenames{i});
%print(filenames{i});
t_data(:,i) = lum.y0
end
angle = linspace(0,0.2,21);
wav_leng = lum.x0.';
figure;
imagesc(angle,wav_leng,t_data); colormap gray; axis xy;
xlabel('kx')
ylabel('Wavelegnth (nm)')
colorbar

 채택된 답변

Voss
Voss 2022년 4월 26일

1 개 추천

Do this:
set(gca(),'YDir','reverse')
at the end (or anywhere after imagesc).

댓글 수: 4

Chalisa Mawla
Chalisa Mawla 2022년 4월 26일
Thank you! It's exactly what I needed
Voss
Voss 2022년 4월 26일
You're welcome!
Hasan Masud Khan
Hasan Masud Khan 2024년 3월 26일
I get error when i used this function. why ????
DGM
DGM 2024년 3월 26일
y is a numeric array, not an axes object. It has no 'dir' property. Axes objects don't have a 'dir' property either.
The first argument to set() should be an axes handle like Voss's example shows. The second argument should be a valid property name for the axes object ('ydir', not 'dir'). The set() command should be issued after the call to imagesc().
imagesc(x,y,z)
set(gca,'ydir','reverse') % or use 'normal' depending on ydata

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Color and Styling에 대해 자세히 알아보기

제품

질문:

2022년 4월 26일

댓글:

DGM
2024년 3월 26일

Community Treasure Hunt

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

Start Hunting!

Translated by