错误:点太少,无法计算具有3个点的椭圆?-R

错误:点太少,无法计算具有3个点的椭圆?-R,r,plot,ggplot2,pca,ellipse,R,Plot,Ggplot2,Pca,Ellipse,G'day。 我正在用factoextra包绘制一个pca。我对每个因素都有3分,我想在每个因素周围画一个椭圆。但是我得到的错误是,点太少,无法计算椭圆 使用stat_eliple功能,可以在ggplot2中的3个点周围绘制椭圆。我可以通过查看ggplot2中的calculate_ellipse来确认这一点,该图显示else if(dfd

G'day。 我正在用
factoextra
包绘制一个
pca
。我对每个因素都有3分,我想在每个因素周围画一个椭圆。但是我得到的错误是,点太少,无法计算椭圆

使用
stat_eliple
功能,可以在
ggplot2
中的3个点周围绘制椭圆。我可以通过查看
ggplot2
中的
calculate_ellipse
来确认这一点,该图显示
else if(dfd<3){消息(“计算椭圆的点太少”)
。那么在
fviz\u pca\u ind
中使用的椭圆函数是什么,它认为3点太少了?有没有办法强制它添加椭圆?这个软件包有我需要的特定功能,所以我想继续使用。谢谢

library(factoextra)

data(iris)

iris2<-iris[c(1:3,51:53,101:103),] # 3 points for each factor

res.pca <- prcomp(iris2[, -5],  scale = TRUE)

fviz_pca_ind(res.pca, label='none',alpha.ind = 1,
             habillage=iris2$Species,
             repel = TRUE, 
             addEllipses = TRUE,invisible='quali')+
  theme(legend.position = 'bottom')+
  coord_equal()

#Too few points to calculate an ellipse
#Too few points to calculate an ellipse
#Too few points to calculate an ellipse
库(额外)
数据(iris)

iris2我也遇到了同样的问题。解决方法是使用软件包中的
geom\u mark\u eliple
。可以在3个点(甚至1个点)周围创建一个椭圆

因此,工作流程应如下所示:

library(factoextra)
library(ggforce)

data(iris)

iris2<-iris[c(1:3,51:53,101:103),] # 3 points for each factor

res.pca <- prcomp(iris2[, -5],  scale = TRUE)

fviz_pca_ind(res.pca, label='none',alpha.ind = 1,
             habillage=iris2$Species,
             repel = TRUE, 
             # Don't use default Ellipses!!!!
             # addEllipses = TRUE,
             invisible='quali') +
  # ADD ggforce's ellipses
  ggforce::geom_mark_ellipse(aes(fill = Groups,
                        color = Groups)) +
  theme(legend.position = 'bottom') +
  coord_equal()
库(额外)
图书馆(警队)
数据(iris)

IRIS2您试图在2参数空间中计算不确定椭圆。椭圆由三个不同的点唯一表示,没有不确定度。因此,您需要3个点才能显示不确定椭圆;换句话说,有3个点的不确定椭圆是矛盾的。@Maurite感谢mment。你能详细说明一下吗?你的意思是这不计算置信区间椭圆吗?想象一下拟合一条通过2个点的直线。在这种情况下,谈论拟合参数的不确定性是没有意义的。没有不确定性,因为有一条独特的线通过2个点。也许也有意思:。@Maurit谢谢,非常有趣。我想我还是不明白为什么在
ggplot2
中可以用3个点画椭圆,但不能用
factoextra