R ggplot2中带有未打印变量的图例

R ggplot2中带有未打印变量的图例,r,ggplot2,plot,R,Ggplot2,Plot,我有数据,每个点位于两个质心之间的光谱上。通过为每个质心指定颜色,然后将每个点的颜色设置为其两个质心之间位置的函数,我为每个点生成了一种颜色。我使用它手动指定每个点的颜色,并按以下方式绘制数据: lb.plot.dat <- data.frame('UMAP1' = lb.umap$layout[,1], 'UMAP2' = lb.umap$layout[,2], 'sample' = as.factor(substr(colnames(

我有数据,每个点位于两个质心之间的光谱上。通过为每个质心指定颜色,然后将每个点的颜色设置为其两个质心之间位置的函数,我为每个点生成了一种颜色。我使用它手动指定每个点的颜色,并按以下方式绘制数据:

lb.plot.dat <- data.frame('UMAP1' = lb.umap$layout[,1], 'UMAP2' = lb.umap$layout[,2],
                          'sample' = as.factor(substr(colnames(lb.vip), 1, 5)), 
                          'fuzzy.class' = color.vect))
p3 <- ggplot(lb.plot.dat, aes(x = UMAP1, y = UMAP2)) + geom_point(aes(color = color.vect)) +
  ggtitle('Fuzzy Classification') + scale_color_identity() 
p3 + facet_grid(cols = vars(sample)) + theme(legend.) + 
  ggsave(filename = 'ref-samps_bcell-vip-model_fuzzy-class.png', height = 8, width = 16)

lb.plot.dat您可以通过设置
guide=“legend”
scale\u color\u identity()
中打开图例绘图。您必须在“缩放”函数中指定打断和标签,以便图例正确说明每种颜色代表的内容,而不仅仅是颜色的名称

库(ggplot2)

df可能答案就是你想要的。只要你使用
scale\u color\u identity()
你将无法轻松生成图例,因为质心和颜色定义之间没有映射。如果要手动控制每个质心使用的颜色,请使用每个质心一级的系数,而不是
color.vect
,并使用带有合适调色板的
scale\u color\u dicrete()
,或
scale\u color\u manual()
。不可能找到有效答案,因为如果不提供数据,代码示例就无法运行。您需要提供一个最小的或简化的代码示例和数据来演示问题本身。如果您提供了一个良好的可复制示例(reprex),这将非常有帮助: