将图层添加到R中的图中

时间:2015-07-27 19:07:01

标签: r ggplot2 scatter-plot

取一些通用数据

A <- c(1997,2000,2000,1998,2000,1997,1997,1997)
B <- c(0,0,1,0,0,1,0,0)
df <- data.frame(A,B)

counts <- t(table(A,B))
frac <- counts[1,]/(counts[2,]+counts[1,])


C <- c(1998,2001,2000,1995,2000,1996,1998,1999)
D <- c(1,0,1,0,0,1,0,1)
df2 <- data.frame(C,D)

counts2 <- t(table(C,D))
frac2 <- counts2[1,]/(counts2[2,]+counts2[1,])

如果我们想要在一个比例上为两个数据集创建一个散点图

我们可以:

plot(frac, pch=22)
points(frac2, pch=19)

但我们发现我们有两个问题

  • 首先我们要将年份值(显示为df$Adf$C)沿x轴设置
  • 我们希望x轴在添加第二个数据时自动调整比例。

需要使用ggplot2或基础R的解决方案

1 个答案:

答案 0 :(得分:0)

ggplot会为您进行缩放。您可以将frac转换为data.frame并与ggplot

一起使用
library(ggplot2)
ggplot(data.frame(y=frac, x=names(frac)), aes(x, y)) +
  geom_point(col="salmon") +
  geom_point(data=data.frame(y=frac2, x=names(frac2)), aes(x, y), col="steelblue") +
  theme_bw()

enter image description here