我在ggplot

时间:2019-07-13 17:07:56

标签: r ggplot2

我创建了一个2x2数据框,用于绘制单行,比较2种治疗的结果。我用于此的代码实际上确实产生了一条线图,但是x限制不允许看到x标签,其中包含只有2个类别的因子变量。

我尝试更改因子中各个级别的名称,更改ggplot()函数中的xlim,放置不同的值(甚至是字符),使用geom_abline()检查我的运气,但没有任何效果。

library(ggplot2)
quien <- factor(c(1,2))
names(quien) <- c("Solo", "Con amigos")
likes<-c(4.3,3.8)
selfie <- data.frame(quien, likes)

ggplot(data=selfie, aes(x=quien, y=y))+
    geom_line()+
    ylim(0,5)

预期结果是一个带有连接坐标线(“ Solo,4.3”)(“ Con amigos”,3.8)的图,正如我们在两个实验的一个组的比较中看到的那样,其中一个因素是2种治疗方法。

我之前显示的代码会产生下一条错误消息:

geom_path:每个组仅包含一个观察值。您需要调整小组的审美吗?

1 个答案:

答案 0 :(得分:0)

如果我对您的理解正确,则只需向group函数中添加aes命令(请参阅here)。明确点:ggplot要求X轴是您直接调用的值-通常是数据帧内的值。此处显示的代码具有(我认为是)您打算使用的X轴作为行名,您无法访问。仅供参考:提供的代码不会产生您所描述的错误。

无论如何,这是您要寻找的吗?

library(ggplot2)
likes<-c(4.3,3.8)
selfie <- data.frame(quien, likes)

selfie$name <- c("Solo","Con amigos")


ggplot(data=selfie, aes(x=name, y = likes, group = 1))+
  geom_line() +
  ylim(0,5)