我想protoclust{protoclust}
通过为用于对我的数据进行分类的每对变量创建散点图,按类着色以及为每个类的95%置信区间重叠椭圆来可视化聚类的结果(用生成),以对每个类进行重叠(以检查椭圆类在每对变量下重叠)。
我已经以两种不同的方式实现了椭圆的绘制,并且生成的椭圆也不同!(第一个实现使用更大的椭圆!)先验的只是它们的大小不同(有些不同的缩放比例?),因为轴的中心和角度在两者上似乎是相似的。我想我一定是通过使用其中之一(不要同时使用两者!)或参数来做错事。
谁能告诉我我在做什么错?
这里是两个实现的代码;两者均基于“ 如何将数据椭圆叠加到ggplot2散点图上”的答案?
### 1st implementation
### using ellipse{ellipse}
library(ellipse)
library(ggplot2)
library(RColorBrewer)
colorpal <- brewer.pal(10, "Paired")
x <- data$x
y <- data$y
group <- data$group
df <- data.frame(x=x, y=y, group=factor(group))
df_ell <- data.frame()
for(g in levels(df$group)){df_ell <- rbind(df_ell, cbind(as.data.frame(with(df[df$group==g,], ellipse(cor(x, y),scale=c(sd(x),sd(y)),centre=c(mean(x),mean(y))))),group=g))}
p1 <- ggplot(data=df, aes(x=x, y=y,colour=group)) + geom_point() +
geom_path(data=df_ell, aes(x=x, y=y,colour=group))+scale_colour_manual(values=colorpal)
### 2nd implementation
###using function ellipse_stat()
###code by Josef Fruehwald available in: https://github.com/JoFrhwld/FAAV/blob/master/r/stat-ellipse.R
p2 <-qplot(data=df, x=x,y=y,colour=group)+stat_ellipse(level=0.95)+scale_colour_manual(values=colorpal)
这是两个图(左图是p1
实现(ellipse()
):
数据可在这里获取:https : //www.dropbox.com/sh/xa8xrisa4sfxyj0/l5zaGQmXJt
@atiretoo是的,当我运行代码时也会发生。我不知道为什么。也许其他人知道吗?何塞
—
josetanago
Warning message: In cov.trob(cbind(data$x, data$y)) : Probable convergence failure
当您运行代码时也会发生这种情况吗?