我使用 ggplot 散点图 2 个数据集,并希望在左上角显示图例。我尝试了一些代码,但没有用。我不确定为什么会这样。
ggplot(mf, aes(log10(mf[,2]),mf[,1]))
+ ggtitle("Plot")
+ geom_point(color = "blue") + theme(plot.margin = unit(c(1,2,1,1), "cm"))
+ xlab("xxx") + ylab("yyy")
+ theme(plot.title = element_text(size=18,hjust = 0.5, vjust=4))
+ geom_point(data=mf2,aes(log10(mf2[,2]),mf2[,1]),color="red")
+ theme(axis.title.x = element_text(size = rel(1.3)))
+ theme(axis.title.y = element_text(size = rel(1.3)))
+ scale_color_discrete(name = "Dataset",labels = c("Dataset 1", "Dataset 2"))
Run Code Online (Sandbox Code Playgroud)
9He*_*ads 11
由于没有提供值,我使用了我自己的值来进行演示。
mf是一个dataframewithlog和valas 的列。
您需要将颜色参数放在美学中。这将导致图例的颜色映射。之后,您可以手动缩放颜色以获得您想要的任何颜色。
您可以使用以下代码来获得所需的结果。
ggplot(mf, aes(val,log))+
geom_point(aes(color = "Dataset1"))+
geom_point(data=mf2,aes(color="Dataset2"))+
labs(colour="Datasets",x="xxx",y="yyy")+
theme(legend.position = c(0, 1),legend.justification = c(0, 1))+
scale_color_manual(values = c("blue","red"))
Run Code Online (Sandbox Code Playgroud)