R中KNN簇的外观控制

R中KNN簇的外观控制,r,cluster-computing,visualization,knn,R,Cluster Computing,Visualization,Knn,我偶然发现了可视化问题,关于R中的KNN聚类。在以下链接中:第一个答案明确显示了如何在R中绘制KNN聚类 我的问题是,基于该代码,如何控制两个簇的颜色和符号类型 我是Stack中的新用户,几乎无法从上面的链接中添加问题注释。因此,如果有人能提供帮助或提示,我将非常感激 提前感谢:)您只需在绘图中添加缩放填充手册和缩放形状手册,即可指定颜色和形状 ggplot(plot.df, aes(Sepal.Length, Sepal.Width, color = predicted, fill = pre

我偶然发现了可视化问题,关于R中的KNN聚类。在以下链接中:第一个答案明确显示了如何在R中绘制KNN聚类

我的问题是,基于该代码,如何控制两个簇的颜色和符号类型

我是Stack中的新用户,几乎无法从上面的链接中添加问题注释。因此,如果有人能提供帮助或提示,我将非常感激


提前感谢:)

您只需在绘图中添加
缩放填充手册
缩放形状手册
,即可指定颜色和形状

ggplot(plot.df, aes(Sepal.Length, Sepal.Width, color = predicted, fill = predicted, shape = predicted)) + 
  geom_point(size = 5) + 
  geom_polygon(data = boundary, aes(x,y), alpha = 0.5) + 
  scale_shape_manual(values = c("setosa" = 0, "versicolor" = 12, "virginica" = 17)) + 
  scale_fill_manual(values = c("setosa" = "red", "versicolor" = "green", "virginica" = "orange"))

您所要做的就是将
scale\u fill\u manual
scale\u shape\u manual
添加到绘图中,以指定颜色和形状

ggplot(plot.df, aes(Sepal.Length, Sepal.Width, color = predicted, fill = predicted, shape = predicted)) + 
  geom_point(size = 5) + 
  geom_polygon(data = boundary, aes(x,y), alpha = 0.5) + 
  scale_shape_manual(values = c("setosa" = 0, "versicolor" = 12, "virginica" = 17)) + 
  scale_fill_manual(values = c("setosa" = "red", "versicolor" = "green", "virginica" = "orange"))

颜色和形状由
aes()
和层
scale.*
控制
如果要合并每种美学的图例,请将
名称
设置为相同的字符串,在下面的代码中,我用
“Cluster”
替换了
“predicted”
。尝试保留一个
刻度盘的名称,然后查看结果

ggplot(plot.df, aes(Sepal.Length, Sepal.Width, 
                    color = predicted, fill = predicted, shape = predicted)) + 
  geom_point(size = 5) + 
  geom_polygon(data = boundary, aes(x,y), alpha = 0.5) +
  #
  scale_color_manual(name = "Cluster", values = c("red", "green", "blue")) +
  scale_fill_manual(name = "Cluster", values = c("red", "green", "blue")) +
  scale_shape_manual(name = "Cluster", values = c(22, 23, 24))

颜色和形状由
aes()
和层
scale.*
控制
如果要合并每种美学的图例,请将
名称
设置为相同的字符串,在下面的代码中,我用
“Cluster”
替换了
“predicted”
。尝试保留一个
刻度盘的名称,然后查看结果

ggplot(plot.df, aes(Sepal.Length, Sepal.Width, 
                    color = predicted, fill = predicted, shape = predicted)) + 
  geom_point(size = 5) + 
  geom_polygon(data = boundary, aes(x,y), alpha = 0.5) +
  #
  scale_color_manual(name = "Cluster", values = c("red", "green", "blue")) +
  scale_fill_manual(name = "Cluster", values = c("red", "green", "blue")) +
  scale_shape_manual(name = "Cluster", values = c(22, 23, 24))

感谢@RuiBarradas的快速响应!它非常适合我的数据。感谢@RuiBarradas的快速响应!它非常适合我的数据。谢谢@erocoar的帮助!谢谢@erocoar对我的帮助!