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

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.

답변 (2개)

dpb
dpb 2016년 8월 28일
편집: dpb 2016년 8월 28일
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

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 2018년 6월 29일
Show exactly what code these two lines are...just checked here to make sure were no typos, etc.

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

Thorsten
Thorsten 2016년 8월 29일
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

카테고리

태그

질문:

2016년 8월 28일

댓글:

dpb
2018년 6월 29일

Community Treasure Hunt

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

Start Hunting!

Translated by