How do I plot intensity of points on a scatter plot?

16 views (last 30 days)
Hey all, I'm a beginner at this but would appreciate some help!
I have a plot of x and y coordinates and I would like to plot them to show the intensity of the points. For example if an (x,y) point occurs quite a bit then it will be dark red on the plot whereas a point that only occurs once will be light blue or something similar. I would greatly appreciate if anyone could help get me started as I haven't been able to find anything or figure it out on my own.

Answers (2)

dpb
dpb on 28 Aug 2016
Edited: dpb on 28 Aug 2016
Nuthin' to it...try
x=randn(100,1);y=randn(100,1); % sample data
scatter(x,y,20*abs(y),y,'filled')
colormap(hsv)
See
doc scatter % for details
ADDENDUM
Oh, I just happened to reread the question; I scanned it too quickly before, it seems--the above is color/size proportional to magnitude, not frequency.
[~,bin]=histc(y,linspace(min(y),max(y),10)); % location of nth bin
scatter(x,y,20*abs(y),bin,'filled')
Above is size of marker by magnitude, color by frequency of occurrence...as always, "salt to suit"...
  2 Comments
Olivia Licata
Olivia Licata on 29 Jun 2018
Every time I run these two lines, ([~,bin]...) no figures result. Even after deleting the lines of code, MATLAB stops running scripts and I have to restart my whole system.
dpb
dpb on 29 Jun 2018
Show exactly what code these two lines are...just checked here to make sure were no typos, etc.

Sign in to comment.


Thorsten
Thorsten on 29 Aug 2016
If the x and y values are not 100% identical, you have to set up a grid and count the number of points in each grid, using hist2
x=randn(10000,1);y=randn(10000,1); % sample data
% adapt these values according to your data
Nbins = 64;
xmin = -4; xmax = 4;
ymin = -4; ymax = 4;
H = hist3([x y], {linspace(xmin, xmax, Nbins), linspace(ymin, ymax, Nbins)});
imshow(H, [])
colormap jet

Categories

Find more on Contour 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!