我创建了一个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:每个组仅包含一个观察值。您需要调整小组的审美吗?
答案 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)