Plot Heatmap from distinct coordinates and data array of floats
이전 댓글 표시
Hi,
I have an array of floats of size 200x2 where each row is the (x,y) coordinate of a specific point on the heatmap (x=column 1 and y=column 2). I also have an array of floats of size 1x200, which is the data I want to plot, I'll denote it as z. At each row of the coordinates array, the point (x,y) is associated with the value in z at the same index. I want to create a heatmap using this data.
I tried creating a meashgrid from the two columns of the coordinate array, but then I have this problem that z doesn't have the proper dimantions. I believe I need to create an array filed with zeros, and fill it with z values at the adequate coordinates, but than I have the problem that the coordinates are floats.
This is the code I used (which is of course problematic):
coords = load('grid_points.mat').array;
accuracies = load('test_accuracies.mat').array;
xcoord = coords(:,1);
ycoord = coords(:,2);
[X,Y] = meshgrid(xcoord,ycoord);
x = X(:); % Your varaible x should something like this as a column vector
y = Y(:); % Similar for variable y
z = accuracies(:); % Similar for variable z
tbl = table(x,y,z); % Combine them in a table
h = heatmap(tbl,'x','y','ColorVariable','z'); % Generate heat map
patial view of the coordinates array:

patial view of the data array:

I'd appreciate it if anyone could help me understand how can I overcome the fact that the coordinates array has floats in it (I don't want to convert it into integers, I want to keep it as floats if possible).
Thank you very much for your time and attention
채택된 답변
추가 답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 Color and Styling에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
