Plotting a heat map using surf function

I have a 2D matrix and I want to plot a heat map. I use the following codes:
fig = surf(X,Y,F);
set(fig,'linestyle','none')
view(2)
But it displays just a plan entirely blue despite the large difference between Z values as shown in image below. How can I fix this issue?

댓글 수: 6

Dyuman Joshi
Dyuman Joshi 2023년 9월 29일
Please attach the data you are working with.
Hi Dyuman,
I attached the image I am working on and here is my code:
clc
clear
f = imread('img.jpg');
f = im2gray(f);
f = rescale(f);
F = fft2(f);
F = abs(F);
x = (0 : size(f,2) - 1)';
y = (0 : size(f,1) - 1)';
[X, Y] = meshgrid(x,y);
fig = surf(X,Y,log(F+1));
set(fig,'linestyle','none')
view(2)
@Roohollah, The plot obtained here is different compared to the one you have attached above.
clc
clear
f = imread('img.jpg');
f = im2gray(f);
f = rescale(f);
F = fft2(f);
F = abs(F);
x = (0 : size(f,2) - 1)';
y = (0 : size(f,1) - 1)';
[X, Y] = meshgrid(x,y);
fig = surf(X,Y,log(F+1));
set(fig,'linestyle','none')
view(2)
Roohollah
Roohollah 2023년 10월 2일
Yes you are right. Because in this code I used log(F+1) instead of F in calling surf function. But the problem is the same. Sorry I forgot to mention it.
Dyuman Joshi
Dyuman Joshi 2023년 10월 2일
I ran the code again and plotted some data tips, and the output is still different from what you got.
Check the image attached.
Roohollah
Roohollah 2023년 10월 3일
That's fine.
Thanks for your time and consideration

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

답변 (0개)

카테고리

도움말 센터File Exchange에서 Graphics Performance에 대해 자세히 알아보기

제품

릴리스

R2023a

태그

질문:

2023년 9월 29일

댓글:

2023년 10월 3일

Community Treasure Hunt

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

Start Hunting!

Translated by