R 使用镶嵌面_包裹绘制熔化的变量

R 使用镶嵌面_包裹绘制熔化的变量,r,ggplot2,R,Ggplot2,我想创建一个有6个方面的情节 我用的是熔化的 使用时: ggplot(g,aes(x = x, y = value, colour = variable, linetype = variable,size = variable)) + geom_line() + facet_wrap(.~condition) 我得到一个错误: Error in layout_base(data, vars, drop = drop) : At least one layer must cont

我想创建一个有6个方面的情节

我用的是熔化的

使用时:

ggplot(g,aes(x = x, y = value, colour = variable, linetype = variable,size = variable)) + 
    geom_line() + facet_wrap(.~condition)
我得到一个错误:

Error in layout_base(data, vars, drop = drop) : 
  At least one layer must contain all variables used for facetting
我不明白这意味着什么,因为我在变量“条件”中有用于刻面的变量

是从中创建融化变量的原始数据

这是我用来生成绘图的代码:

ggplot(g,aes(x = x, y = as.numeric(value), colour = varible, linetype = variable,size = variable)) + 
    geom_line() + 
    scale_x_continuous(breaks=seq(1,10,1)) +
    scale_y_continuous(breaks=seq(0,1, 0.1))+
    scale_colour_manual(values=c("red3","red3","red3","red3", "red3","red3","red3", "red3","red3",   
    "blue3","blue3","blue3","blue3","blue3","blue3","blue3","blue3","blue3")) + 
    scale_linetype_manual(values = c(1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2)) + 
    scale_size_manual(values = c(0.4,0.4,0.4,0.4,0.4,0.4,0.4,0.4,0.4,0.4,0.4,0.4,0.4,0.4,0.4,0.4,0.4,0.4)) + 
    xlab("\nTime-steps") + 
    ylab("Proportion correct\n") +
    theme_bw() +
    theme(axis.text=element_text(size=5),
          axis.title=element_text(size=5),
          axis.line = element_line(size=0.25),
          axis.ticks=element_line(size=0.25),
          panel.grid.major = element_blank(),
          panel.grid.minor = element_blank(),
          panel.border = element_blank(),
          panel.background = element_blank(),
          legend.position="none" ,
          legend.direction="vertical", 
          legend.title=element_blank(),
          legend.text=element_text(size=6), 
          legend.background=element_blank(), 
          legend.key=element_blank())+facet_wrap(~condition)

您有两个主要问题-y被编码为一个因子,应该是数字,更重要的是,您的facet\u wrap术语中有一个微小的输入错误,应该没有

p <- ggplot(g,aes(x = as.numeric(x), y = as.numeric(value), group = variable)) 
p <- p + geom_line()
p <- p + facet_wrap(~condition)
p

p不知怎么的,它对我还是不起作用。这就是我现在得到的:错误:离散值提供给continuous scaleDid您是否完全执行了我发布的代码?即使我将代码用于颜色和线型,它也能正常工作,但由于R的颜色和线型太多,所以无法正常工作,因为有太多不同的变量<代码>ggplot(g,aes(x=x,y=as.numeric(value),group=variable,color=variable,linetype=variable,size=variable))+geom_line()+facet_wrap(~condition)
我这样问是因为我们没有对天平做任何事情。请注意,x也被编码为一个因子,也许也应该是数字?嗨,我尝试了你发布的确切代码,但我仍然得到了错误。另外,请提供我在更新中用于绘图的完整代码,我认为-您正在更改比例,并隐式假设x是数字,但它被编码为一个因子。因此包括
x=as.numeric(x)
。然后,您的代码在“variable”中有一个输入错误,之后由于变量数量太多而失败(请参阅我的编辑以获得一个解决方案)。如上所述,您应该删除
linetype=variable,size=variable
,因为您的变量有太多级别。
g$size<-substring(g$variable,1,5)