# how do I convert scatter data into a density plot

194 vues (au cours des 30 derniers jours)
Howard Padmore le 4 Juil 2023
I have scatter data in an x and y array. Using Scatter this produces dots at the x,y coordinate.
How do I convert this to a density map (I will have many more points). I could do this by splitting the space into a number of bins of a defined size and then count the number of points that fell inside each, then I would have x',y',z data, but there must be a Matlab function for this
Typical scatter plot is
##### 1 commentaireAfficher -1 commentaires plus anciensMasquer -1 commentaires plus anciens
Howard Padmore le 5 Juil 2023
thanks for the suggestion. Histcounts2 worked perfectly. Only issue is that the routine gives the edge positions of each bin as two vectors, and then an array of intensities, so you end up with 1 more position in each vector than histogram bins along each axis. I averaged adjacent bin edge positions, so this gives the same number of positions in the x-y vectors as values in the x-y array. Then you can use mesh or surface to view the density plot. Many thanks for the help.

Connectez-vous pour commenter.

### Réponse acceptée

Diya Tulshan le 4 Juil 2023
Hii Howard Padmore,
I understand that you want to know about the MATLAB function to convert scatter data into density plot.
Kindly refer to the following documents for implementing the plot:-
##### 0 commentairesAfficher -2 commentaires plus anciensMasquer -2 commentaires plus anciens

Connectez-vous pour commenter.

### Plus de réponses (2)

Nikhil le 4 Juil 2023
Hey Howard,
After searching about your issue and I think that density plots using hist3 and contourf will be helpful.
##### 0 commentairesAfficher -2 commentaires plus anciensMasquer -2 commentaires plus anciens

Connectez-vous pour commenter.

Emma Farnan le 1 Mar 2024
Depending on how close your points are and their original size, you could just use the additive opacity from MarkerFaceAlpha to give some intuition of the density.
x = randn(10000,1);
y = randn(10000,1);
figure; s = scatter(x,y,'filled','MarkerFaceAlpha',0.05);
Or alternatively, you could get a smoother version of the the histograms by using kernel density estimation (ksdensity) to predict the probability distribution. The example page shows how it can be used to plot a 3D meshgrid of the point density.
##### 0 commentairesAfficher -2 commentaires plus anciensMasquer -2 commentaires plus anciens

Connectez-vous pour commenter.

### Catégories

En savoir plus sur Scatter Plots dans Help Center et File Exchange

R2022b

### Community Treasure Hunt

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

Start Hunting!

Translated by