Create a 2D plot with irregular axes
3 次查看(过去 30 天)
显示 更早的评论
I have a dataset with associated x and y coordinates, but the coordinates for both axes are not at regular intervals. Is there a way to make a map (ideally 2D but I would accept 3D) that shows these results - the values represented by colour - at their coordinates (akin to imagsc)?
0 个评论
回答(2 个)
Star Strider
2025-5-2
The plot function does not care if the data are not regularly sampled. It wil plot them appropriately regardless.
Example —
t = sort(rand(1,100));
s = sin(5*pi*t);
figure
plot(t, s, '.-')
grid
axis('padded')
sp = s;
sp(end) = NaN;
c = sp;
figure
patch(t,s,c, EdgeColor='interp',Marker='s',MarkerFaceColor='flat')
grid
axis('padded')
colormap(turbo)
I am not certain what you want.
.
3 个评论
Star Strider
2025-5-5
I am not certain what the image is, or what it represents.
Try something like this —
imshow(imread('TT3.png'))
x = randn(1000,1);
y = randn(1000,1);
figure
histogram2(x, y, 50, FaceColor='flat')
colormap(turbo)
% axis('equal')
axis('square')
view(0,90)
Make appropriate changes to get the result you want.
.
Walter Roberson
2025-5-2
pointsize = 20;
scatter(x, y, pointsize, Dataset(:))
This will produce colored round dots at the given locations.
Producing square or rectangular dots would be more work.
2 个评论
Walter Roberson
2025-5-3
Ah, I guess you can specify square markers for scatter() if you need to plot squares.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Annotations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!