Draw angled ellipses around clusters on PCA plot

28 次查看(过去 30 天)
I would like to draw angled ellipses around clusters in a PCA plot representing the 95% CI for this cluster, similar to what is done by autoplot in R (also, see attached example, or this link https://r-charts.com/correlation/scatter-plot-ellipses-ggplot2/). Any resources for how to do this in matlab, or the math behind how to do this would be much appreciated!
As a note: I did see a post on this forum where people drew ellipses in line with the axes where the height of the ellipse is the 95% CI in X and the width is the 95% CI in Y; this is NOT what I would like, I would like the ellipses at an angle that fits the shape of the clusters, as shown in my examples

采纳的回答

Mathieu NOE
Mathieu NOE 2023-11-24

更多回答(2 个)

Matt J
Matt J 2023-11-29
编辑:Matt J 2023-11-29
See also elliipticalFit from the FEX downloadable,
It can also be used to plot ellipses as well as fit them, e.g.,
[Center,Axes,Angle]=deal([0 2] , [2 1], 30); %Ellipse parameters
plot( ellipticalFit.groundtruth([],Center,Axes,Angle) );

Matt J
Matt J 2023-11-29
Using polyshapes:
ellipse=rotate( scale(nsidedpoly(1000),[2,1]) ,30);
plot(ellipse)

类别

Help CenterFile Exchange 中查找有关 Dimensionality Reduction and Feature Extraction 的更多信息

产品


版本

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by