R 对同一ggplot使用不同的数据帧
我在R 对同一ggplot使用不同的数据帧,r,ggplot2,R,Ggplot2,我在ggplot2中找到了%+%运算符的示例,用于为同一绘图使用不同的数据帧。有一些例子 当我尝试此操作时,会收到一条错误消息: df <- data.frame(x=rnorm(1000), y=rnorm(1000)) p <- ggplot(df, aes(x,y)) + geom_point() p p %+% df[1:100,] 基本问题是在ggplot2之后加载psych包,这会给您一条消息: 附加软件包:“psych” 以下对象被“package:ggplot2”屏
ggplot2
中找到了%+%
运算符的示例,用于为同一绘图使用不同的数据帧。有一些例子
当我尝试此操作时,会收到一条错误消息:
df <- data.frame(x=rnorm(1000), y=rnorm(1000))
p <- ggplot(df, aes(x,y)) + geom_point()
p
p %+% df[1:100,]
基本问题是在
ggplot2
之后加载psych
包,这会给您一条消息:
附加软件包:“psych”
以下对象被“package:ggplot2”屏蔽:
%+%,阿尔法
由于R的解析器允许有限的字符集来分隔运算符,因此::+反勾选技巧
p ggplot2::`%+%`newdata
将不起作用。除了确保在ggplot2
之前加载psych
,您还可以
`%+%` <- ggplot2::`%+%`
对您的代码进行修改,以确保这不会意外发生…在
ggplot2\u 1.0.1
上对我有效。尝试更新您的ggplot2
软件包。您还可以查看?“%%+%”
是否找到ggplot2函数刚刚发现psych
包覆盖了%%
函数。是否有方法调用ggplot2
version explizit<代码>ggplot2::%+%不起作用。在加载ggplot2
之前加载psych
?或者在`ggplot2:`%%``中的%+%
周围加上单引号,谢谢,这就解决了我的问题。@BenBolker我想试试ggplot2:
符号,因为它在出现错误时似乎更稳定,但我无法让它工作。R总是抱怨“p ggplot2”中出现意外符号。p是我的图形,我尝试ggplot2::“%+%”,但“是单回记号,现在将突出显示我的命令。我也尝试了只用一个冒号、双回记号和许多不同的组合,但总是出现相同的错误。实际上,我在我的函数中将%+%
重新分配给%myadd%
,只是为了确保。。。我经常使用psych
软件包,它经常在后台加载,我不想麻烦。。。我不明白为什么回击技巧没有按我的方式起作用,但现在还不完全清楚;-)但我有你的解决方案,谢谢。
`%+%` <- ggplot2::`%+%`
if(find("%+%")[1]=="package:psych") stop("oops")