Clear Filters
Clear Filters

How do I create a colored intensity plot from location and intensity values

53 views (last 30 days)
There are 13 points with an x and y coordinate. Each point has an intensity value from 1-20. I'm wondering how to display a plot with a colored intensity map simillar to a heat map. Any suggestions?

Accepted Answer

MarKf on 4 Apr 2023
Could imagesc work?
sysize = 100; maxintensity = 20; npoints = 13;
coords = randi(sysize,[npoints,2]);
imatc = nan(sysize);
for icx = 1:size(coords,1), imatc(coords(icx,1),coords(icx,2)) = randi(maxintensity,1); end
clims = [1 maxintensity];
imagesc(imatc,clims), xlabel('x'),ylabel('y'), colorbar

More Answers (1)

Jon on 4 Apr 2023
This is one approach
% define x,y coordinates and corresponding z value
x = rand(13,1)
y = rand(13,1)
z = x.*y
% make evenly spaced x,y grid to plot data on
% interpolate data points onto grid
zq = griddata(x,y,z,xq,yq);
% make a filled contour plot (heatmap)
  1 Comment
Jon on 4 Apr 2023
The above is just an example to show the approach. Obviously you would assign your actual x,y and z values rather than using random values.

Sign in to comment.


Find more on Data Distribution Plots in Help Center and File Exchange




Community Treasure Hunt

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

Start Hunting!