这是我在论坛上关于 R 的第一个问题,如果我在制定问题或指定标题时犯了任何错误,请提前道歉。
关键是,对于 ggplot 的特定任务,我在 ggplot 函数之外定义美学,然后将其作为参数提供。
>mytmpaes<-aes(x=Sample,y=ddCt.lin,ymax=ddCt.lin+ddCt.lin.sd,ymin=ddCt.linddCt.lin.sd,fill=factor(endog))
>my.ggplot(x,mytmpaes)
但有时我只想修改 mytmpaes 列表中的一些对象,而不使用 aes() 再次定义所有对象。但是,我真的不知道如何处理这个特殊的列表。aes 列表如下所示:
>mytmpaes
List of 5
$ x : symbol Sample
$ y : symbol ddCt.lin
$ ymax : language ddCt.lin + ddCt.lin.sd
$ ymin : language ddCt.lin - ddCt.lin.sd
$ fill : language factor(Rep)
我想出了如何像这样修改其中的一些:
> mytmpaes$x<-as.symbol('Names')
> mytmpaes$fill<-call('factor',quote(target))
> mytmpaes
List of 5
$ x : symbol Names
$ y : symbol ddCt.lin
$ ymax: language ddCt.lin + ddCt.lin.sd
$ ymin: language ddCt.lin - ddCt.lin.sd
$ fill: language factor(endog)
但是,我找不到用类似表达式修改 ymax 或 ymin 的方法。例如,我想将 ymax 更改为 'ddCt.log2 - ddCt.log2.sd'。
有人可以给我一些建议吗?另外,是否有更正确的方法来修改 aes 列表?
谢谢,
亚历杭德罗