我想将格式良好的数据帧打印到纸上,最好是从脚本中打印出来.(我正在尝试使用仪器收集数据并使用R脚本自动处理和打印).
现在我可以使用数据框写入文本文件write.table(),但这有两个问题:
我正在寻找一般策略而不是特定代码(尽管代码也很棒!).Sweave会是最方便的解决方案吗?原则上我可以socketConnection()用来打印到打印机 - 如果是这样,我在哪里可以学习如何使用它(我没有发现文档非常有帮助).
我想使用ggplot2在散点图上的点周围放置黑色边框,这些点基于数据填充.另外,我想避免使用黑色边框的图例条目,因为它将在每个点上.基本上我正在寻找这个情节,但每个点周围都有黑色边框.
df <- data.frame(id=runif(12), x=1:12, y=runif(12))
ggplot(df, aes(x=x, y=y))+geom_point(aes(colour=id), size=12)
Run Code Online (Sandbox Code Playgroud)

作为奖励,我希望没有黑色边框的传奇条目.我最好的尝试是:
df <- data.frame(id=runif(12), x=1:12, y=runif(12))
ggplot(df, aes(x=x, y=y))+geom_point(aes(fill=id, colour="black"), size=12)
Run Code Online (Sandbox Code Playgroud)
这使:

我不明白为什么那不能给我我想要的东西,更糟糕的是(对于我在ggplot2中的教育)我不明白为什么它似乎没有将填充颜色映射到任何东西!有帮助吗?
也许如果我可以获得轮廓和填充映射,我可以使用像这里的最后一组数字中的那个黑客来关闭传说.
我和这个用户有同样的问题- 我有一个'锯齿状'刻面图,其中底行的面板比其他行少,我想在每列的底部有x轴刻度.
该问题的建议解决方案是设置scales="free_x".(在ggplot 0.9.2.1中;我相信我正在寻找的行为在早期版本中是默认的.)在我的情况下,这是一个糟糕的解决方案:我的实际轴标签会相当长,所以将它们放在每一行下会占用太多房间.结果是这样的:
x <- gl(3, 1, 15, labels=paste("this is a very long axis label ", letters[1:5]))
y <- rnorm(length(x))
l <- gl(5, 3, 15)
d <- data.frame(x=x, y=y, l=l)
ggplot(d, aes(x=x, y=y)) + geom_point() + facet_wrap(~l, scales="free_x") +
theme(axis.text.x=element_text(angle=90, hjust=1))
Run Code Online (Sandbox Code Playgroud)

在这里的评论中,Andrie建议可以手动完成,grid但我不知道如何开始.
我想使用ggplot2制作一个带有反转的log10 x比例的图:
require(ggplot2)
df <- data.frame(x=1:10, y=runif(10))
p <- ggplot(data=df, aes(x=x, y=y)) + geom_point()
Run Code Online (Sandbox Code Playgroud)
但是,似乎我可以使用 log10比例或反转比例:
p + scale_x_reverse() + scale_x_log10()
Run Code Online (Sandbox Code Playgroud)

p + scale_x_reverse()
Run Code Online (Sandbox Code Playgroud)

我想这是合乎逻辑的,如果一个图层只能有一个比例.当然,我可以通过自己对数据df$xLog <- log10(df$x)
框进行日志转换来破解它,但是这个解决方案似乎与ggplot的精神背道而驰.有没有办法在不进行ggplot调用外部的数据转换的情况下获得这种情节?
我想将乳胶文本添加到ggplot2图中annotate().使用expression(),描述在这里添加乳胶轴标签,似乎并没有工作.以机智:
# Use expression() to create subscripted text
p <- ggplot(mpg, aes(x=cty, y=hwy)) + geom_point() +
scale_x_continuous(expression(text[subscript]))
# But expression() in annotate adds nothing to the plot
p + annotate("text", x=10, y=40, label=expression(text[subscript]))
# Passing regular text to annotate works fine
p + annotate("text", x=10, y=40, label="foo")
Run Code Online (Sandbox Code Playgroud)
为什么expressions的处理方式annotate与其他ggplot函数不同?我怎样才能用乳胶注释?
我想从字符向量中提取以数字开头的元素,但是有一些关于POSIX正则表达式语法的东西,我不明白.
我想是的
vec <- c("012 foo", "305 bar", "other", "notIt 7")
grep(pattern="[:digit:]", x=vec)
Run Code Online (Sandbox Code Playgroud)
会返回1 2 4因为它们是其中包含数字的四个元素.但实际上它会回归3 4.
同样按照我的预期grep(pattern="^0", x=vec)返回1,因为元素1以零开头.但是grep(pattern="^[:digit:]", x=vec)返回,integer(0)而我希望它返回,1 2因为那些是以数字开头的元素.
我怎么会误解语法?
我想将此处讨论的问题提交给SO社区:Sweave用户与Word用户协作的最佳方式是什么?
我正在尝试将我的整个工作流程移动到R和Sweave(或类似的,例如Knitr可能会证明更有用).但是,我工作流程的最后一步通常是与合作者一起撰写手稿.他们的工作方式是来回传递MS Word文档,并使用Track Changes编辑文本.
让我们规定我不能说服他们任何人学习任何新软件 - 他们的过程不会改变.我正在寻找一种直截了当的方式:
1.)将Sweave创建的文档发送给共同作者
2.)允许他们在Word中打开文档并进行跟踪更改
3.)接收编辑后的文件并将其重新纳入Sweave,理想情况是以某种方式强调共同作者的变更
4.)如果解决方案适用于OSX,那将是很好的.
关于R帮助邮件列表的讨论主要关注SWord,它似乎没有文档,仅适用于Windows.有谁知道它是否好?关于Vanderbilt的生物统计学wiki的讨论很好地将Sweave文档转换成Word可读形式,但没有关于如何将编辑的Word文档与Sweave集成.
我喜欢github和RStudio的工作流程.最近,我创建了一个项目模板,它可以创建目录和脚本等,并希望在本地创建并推送到github.
在过去,我通过https://github.com/在RStudio中使用版本控制创建了一个项目的repo 来创建本地repo,然后转储我已经拥有的所有文件.
这似乎浪费时间.如何使用.Rproj文件获取已存在于RStudio中的目录/ repo并上传到github而不首先在https://github.com/上创建shell repo ?
我认为这可以节省工作流程的时间.
我想我可以按照方向-在 - 添加版本控制到项目下添加版本控制但这不允许我推送到github(也不应该因为RStudio如何知道你想要哪个git网站推到).
我和这个用户有同样的问题:我想制作一个facet_grid带有离散x轴的图,我想让x轴标签写在每个面下,而不是只在底面的一行面下面.例如:
# Drop some factor levels to make the plot smaller
diamondSub <- subset(diamonds, (cut=="Ideal" | cut=="Premium") &
(color=="E" | color=="I"))
# Note that scales="free_x" has no practical effect here
ggplot(diamondSub, aes(x=clarity, y=price)) +
geom_blank()+
geom_boxplot() +
facet_grid(cut~color, scales="free_x")
Run Code Online (Sandbox Code Playgroud)

但是,我不想使用该帖子的解决方案,而只是使用facet_wrap而不是facet_grid,因为我更喜欢facet_grid用条形文本标记条形文本,列的顶部有一个变量,而另一个变量标注行.
当所有x轴实际上相同时,有没有办法在每个面下获得x轴标签facet_grid?
approxfun状态的文档说它"通常比approx" 更有用".我正在努力让自己的头脑approxfun.什么时候approxfun比approx什么时候更有用(什么时候approx更有用)?