在Rstudio 0.96中的R Markdown文件上按"Knit HTML"时会运行什么命令?
我的动机是,当我在另一个文本编辑环境中时,我可能想要运行相同的命令,或者我可能想要将命令组合成更大的命令makefile.
考虑以下简单的Dockerfile:
FROM debian:testing
RUN adduser --disabled-password --gecos '' docker
RUN adduser --disabled-password --gecos '' bob
Run Code Online (Sandbox Code Playgroud)
在一个没有别的工作目录.构建docker镜像:
docker build -t test .
Run Code Online (Sandbox Code Playgroud)
然后在容器上运行bash脚本,将工作目录链接到bob主目录中的新子目录:
docker run --rm -it -v $(pwd):/home/bob/subdir test
Run Code Online (Sandbox Code Playgroud)
谁拥有subdir容器上的内容?在容器上,运行:
cd /home/bob/subdir
ls -l
Run Code Online (Sandbox Code Playgroud)
广告我们看到:
-rw-rw-r-- 1 docker docker 120 Oct 22 03:47 Dockerfile
Run Code Online (Sandbox Code Playgroud)
圣烟!docker拥有内容!回到容器外的主机上,我们看到我们的原始用户仍然拥有Dockerfile.让我们尝试修复bob主目录的所有权.在容器上,运行:
chown -R bob:bob /home/bob
ls -l
Run Code Online (Sandbox Code Playgroud)
我们看到:
-rw-rw-r-- 1 bob bob 120 Oct 22 03:47 Dockerfile
Run Code Online (Sandbox Code Playgroud)
可是等等!在容器外面,我们现在运行ls -l
-rw-rw-r-- 1 1001 1001 120 Oct 21 20:47 …Run Code Online (Sandbox Code Playgroud) 我正在努力想出一个很好的系统来生成幻灯片和随附的讲义.理想的系统具有以下属性:
pandoc 幻灯片分隔符格式(在指定级别的标题之后自动生成新幻灯片)是首选sed),但不想写一个庞大的基础设施以下是我迄今为止发现的各种选项:
RStudio演示文稿(.Rpres文件):
pandoc幻灯片分隔符格式rmarkdown.它解决了上述许多.Rpres格式问题.pandoc:可能是唯一具有脚注,参考书目支持等功能的降价转换器.我也可以使用tufte-handout类pandoc生成LaTeX ,符合我的美容标准.
pandoc -s -S -i -t dzslides --mathjax knitr-slides.md -o knitr-slides.html,但它似乎不是......Rnw编写(knitr-dialect Sweave)而不是R markdown开始.这会给我最大的灵活性......
毕竟,我的具体问题是:为HTML输出生成两列布局的最佳(最简单)方法 …
我有清除工作区的rm(list=ls())代码:以及清除控制台的代码:cat("\014")
是否有代码清除Rstudio的所有情节?
在RStudio 中使用knit()/ knit2pdf()代替"编译PDF" 1按钮有什么(可能不需要的)副作用?
大多数用户knitr似乎都在RStudio中编写文档,并使用"编译PDF"/"编织HTML"按钮编译文档.这大部分时间都可以顺利运行,但每隔一段时间就有一些使用编译按钮无法实现的特殊要求.在这些情况下,解决方案通常是直接调用knit()/ knit2pdf()/ rmarkdown::render()(或类似函数).
一些例子:
使用knit2pdf()而不是"编译PDF"按钮通常提供这种问题的简单解决方案.然而,这是有代价的:"编译PDF" 在一个单独的过程和环境中处理文档有根本区别,而knit2pdf()朋友则不然.
这具有影响,问题在于并非所有这些影响都是显而易见的.以knit()使用全局环境中的对象的事实为例(而"编译PDF"没有)作为示例.在上述第二个例子的情况下,这可能是显而易见的,并且是期望的行为,但是当用于克服例如示例1和3中的问题时,这是意想不到的结果knit().
此外,还有更微妙的差异:
每当我读/写使用的建议knit2pdf()而不是"编译PDF"时,我认为"正确,但用户应该理解后果......".
因此,这里的问题是:
在RStudio 中使用
knit()/knit2pdf()代替"编译PDF"按钮有什么(可能不需要的)副作用?
如果对这个问题有一个全面的(社区维基?)答案,可以将其与未来的建议联系起来knit2pdf().
这个问题有很多相关的问题.然而,他们要么只提出代码(或多或少)重现RStudio按钮的行为,要么他们解释"基本上"发生了什么,而没有提到可能的陷阱.其他人看起来像是非常相似的问题,但结果却是一个(非常)特殊情况.一些例子:
我在Windows 7上使用R.显然R在某种程度上发现了我说英语之外的语言的证据,并固执地坚持用我自己的语言在控制台中输出.由于各种原因,这是不可取的,我希望R是英语.
我能够LANGUAGE=en用作R控制台桌面快捷方式的命令行选项,但Rstudio中的语言仍然是错误的,它直接启动R可执行文件,因此忽略了快捷方式中的命令行参数.
我曾尝试创建一个.Renviron下的文件C:\Users\[MY_NAME]\Documents,这是由工作目录返回的路径getwd(),用LANGUAGE=en它.R忽略了这一点.我R_ENVIRON和R_ENVIRON_USER变量显示为""所以.Renviron应该是正确的文件名.
我也试过创建.Renvironunder R_HOME\etc(R_HOME指向C:/PROGRA~1/R/R-215~1.0)而R也忽略它.
我是有所增加成功Sys.setenv(LANGUAGE="en")的R_HOME\etc-这使得从R控制台英语的所有输出,除了初始的版权信息.
如何将R默认为英语,以便将其传播到RStudio?
相关,但一般只讨论分配的绘图空间,而不是如何直接设置绘图图像大小然后缩放它以填充所需的空间
我正在创建一个闪亮的Web应用程序,并希望设置绘图和比例的大小.我的意思是我正在寻找一种方法来为我的绘图设置有限的高度/宽度,然后将设置大小的图像缩放到该mainPanel( plotOutput ())区域.
以此作为例子/类似情况shiny.
x <- 1:10
y <- x^2
png("~/Desktop/small.png", width = 600, height = 400)
plot(x, y)
dev.off()
png("~/Desktop/big.png", width = 1200, height = 800)
plot(x, y)
dev.off()
Run Code Online (Sandbox Code Playgroud)
我无法将图像上传到SO并设置大小,因此我将使用以下html包含每个的浏览器屏幕截图:
<img src="file:///home/jwhendy/Desktop/file.png" width = "800px" />
Run Code Online (Sandbox Code Playgroud)
这是我1600 x 900 px笔记本电脑上的全宽屏幕截图.
小

大

我想控制图像本身的大小,因为我ggplot2在使用类似的选项时会发现这些图例colour = var并且size = var非常小.注意读取大图片的轴标签的难度.我意识到我可能会遇到由于像素有限而无法很好地缩放图像尺寸的情况,但我认为在遇到这种情况之前我至少有一些旅行空间.
有什么建议?到目前为止我试过玩下面的内容,但没有运气:
shinyUI(pageWithSidebar(
headerPanel("Title"),
sidebarPanel(),
mainPanel(
plotOutput(outputId = "main_plot", width = "100%")) …Run Code Online (Sandbox Code Playgroud) 如利润,方向等......
dev.off()不适合我.我经常使用RStudio,内置图形设备.然后我有绘图功能,我想要在默认的RStudio图形设备中绘制,或者如果我X11()在新窗口中调用之前绘制.
此行为不起作用dev.off().如果我的绘图功能总是调用dev.off(),它可能会无意中关闭X11()窗口,而是在RStudio设备中绘图.如果我总是打电话dev.off()跟随X11(),它将始终在新窗口中绘图,即使我想在RStudio设备中绘图.
getOption("device")然而,通常可以通过总是返回来解决RStudioGD.
我想在漫长的运行算法中输出进度指示器.我可以轻松地从我的算法中"冒泡"一个进度值(例如,通过专门为此目的调用提供的函数回调),但困难在于实际的文本输出过程.每次调用print都会创建一个新行,每行都有一个前缀[1].
有没有办法在不同时刻打印,而不会引入换行符?
具体来说,我希望实现一个"动画",如果在两个不同的时间观察,它将如下所示.
0%...
Run Code Online (Sandbox Code Playgroud)
...
0%...2%...4%...
Run Code Online (Sandbox Code Playgroud) rstudio ×10
r ×9
knitr ×3
r-markdown ×2
docker ×1
linux ×1
localization ×1
newline ×1
permissions ×1
plot ×1
settings ×1
shiny ×1
size ×1
slidify ×1
windows ×1