我想在我闪亮的仪表板应用程序中显示带有LaTeX方程的Rmd文件.我使用includeMarkdown()和遇到了问题includeHTML().这是我正在努力实现的简化应用程序.这是我的app.R:
library(shinydashboard)
ui <- dashboardPage(
dashboardHeader(title='My test application'),
dashboardSidebar(
sidebarMenu(
menuItem("Theory", tabName = "theory", icon = icon("book"))
)
),
dashboardBody(
tabItems(
tabItem(tabName="theory",
includeMarkdown("Theory.Rmd")
#includeMarkdown("Theory.md")
#includeHTML("Theory.html")
)
)
)
)
server <- function(input, output){
}
shinyApp(ui = ui, server = server)
Run Code Online (Sandbox Code Playgroud)
我的Theory.Rmd文件:
---
title: "Theory"
output:
html_document:
mathjax: "http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
---
Here is an equation:
$$Q = a(h ? c)^b$$
Run Code Online (Sandbox Code Playgroud)
请注意,为了运行应用程序,必须将Theory.Rmd和app.R保存在同一目录(例如工作目录)中,手必须具有这些确切的名称.要获取Rmd文件的markdown Theory.md文件,只需执行以下操作:
library(knitr)
knit("Theory.Rmd","Theory.md")
Run Code Online (Sandbox Code Playgroud)
要获取该Theory.html文件,只需按下Theory.Rmd文件中的Knit to HTML按钮即可
在我的浏览器或RStudio窗口中运行我的应用程序时,includeMarkdown("Theory.Rmd")或者includeMarkdown("Theory.md"),不要渲染方程式,但它在理论菜单项中默认启动,如下所示:
但是使用includeHTML("Theory.html")方程式可以正确渲染,但屏幕显示会缩短,默认情况下它不会在任何菜单项中启动,如下所示:
但是当点击理论时,我得到了正确的渲染方程式: …
我在R环境中有一个数据框,我想根据特定的标准进行子集 - 一种条件过滤器.我的数据框是2004 - 2014年间每天每日价值的面板数据集.数据框中的每一天都是单独的观察.每年有366天.我想对数据进行分组,以便只有闰年在第366天保留在面板数据中.在2004年,2008年,2012年的时间范围内有三个闰年.我在一年中和一年中都有一个单独的列.换句话说,我需要一个脚本,它将在没有第366天的情况下返回数据集,但仅限于2004,2008和2012以外的每年.
我已经成功地做到这一点的方式如下:我贴我的日和年列在一起(例如"2006-366"),只是使用dplyr的过滤器命令每年子集(2005-366,2006-366,2007-366, 2009-366,2010-366,2011-366,2013-366,2014-366).然而,这是一种非常粗糙的方法.我希望有人能在这里指出我正确的方向.这里有一些可重复的数据以及我使用的工作流程.
#Create DF
year<-rep(c(2004:2014), each=366)
day<-rep(c(1:366))
df<-data.frame(day, year)
#My crude method
df $reduc<-paste(df$year, df$day, sep="-")
df <-df %>%
filter(reduc!="2005-366") %>%
filter(reduc!="2006-366") %>%
filter(reduc!="2007-366") %>%
filter(reduc!="2009-366") %>%
filter(reduc!="2010-366") %>%
filter(reduc!="2011-366") %>%
filter(reduc!="2013-366") %>%
filter(reduc!="2014-366")
Run Code Online (Sandbox Code Playgroud) 我知道这个问题已被多次询问,但我认为,自从提出这些问题以来,情节的一些基本语法已经改变了.使用ggplotly()创建一个等值区域图提供了我的美学中的long,lat,group和我的一个变量的默认工具提示.我知道工具提示只映射了美学中的什么.我想要做的就是自定义工具提示,以便在我的数据集中显示一些变量(包括那些未映射到美学的变量)而不显示其他变量(例如坐标).下面是一个可重复的例子,到目前为止我尝试过的.我跟着回答其他问题的建议无济于事.
#Load dependencies
library(rgeos)
library(stringr)
library(rgdal)
library(maptools)
library(ggplot2)
library(plotly)
#Function to read shapefile from website
dlshape=function(shploc, shpfile) {
temp=tempfile()
download.file(shploc, temp)
unzip(temp)
shp.data <- sapply(".", function(f) {
fp <- file.path(temp, f)
return(readOGR(".",shpfile))
})
}
austria <- dlshape(shploc="http://biogeo.ucdavis.edu/data/gadm2.8/shp/AUT_adm_shp.zip",
"AUT_adm1")[[1]]
#Create random data to add as variables
austria@data$example1<-sample(seq(from = 1, to = 100, by = 1), size = 11, replace = TRUE)
austria@data$example2<-sample(seq(from = 1, to = 100, by = 1), size = 11, replace = TRUE)
austria@data$example3<-sample(seq(from = 1, …Run Code Online (Sandbox Code Playgroud) 我无法将.rmd文件上传到wordpress。我不确定发生了什么,但是错误表明我没有权限远程发布到wordpress,尽管据我了解,wordpress甚至允许免费帐户进行远程发布。我已经搜索了所有有关堆栈溢出的wordpress R查询,但似乎没有任何效果。这是我的工作流程:
devtools:::install_github("duncantl/RWordPress", force=T)
library(RWordPress)
# Set login parameters (replace admin,password and blog_url!)
options(WordPressLogin = c(admin = 'password'), WordPressURL = 'blog_url/xmlrpc.php')
library(markdown)
library(knitr)
options(markdown.HTML.options = c(markdownHTMLOptions(default = T),"toc"))
# Upload plots: set knitr options
opts_knit$set(upload.fun = function(file){library(RWordPress);uploadFile(file)$url;})
postThumbnail <- RWordPress::uploadFile("File.rmd",overwrite = TRUE)
Run Code Online (Sandbox Code Playgroud)
产生以下错误:
Error: faultCode: 401 faultString: You do not have permission to upload files.
Run Code Online (Sandbox Code Playgroud)
我还尝试了以下方法:
knit2wp('fake.rmd', title = 'TITLE', publish = FALSE)
Run Code Online (Sandbox Code Playgroud)
并产生相同的错误。
这是我的会话信息:
sessionInfo()
R version 3.3.0 (2016-05-03)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X 10.11.5 (El Capitan) …Run Code Online (Sandbox Code Playgroud) 我有一个数据帧,返回2组相同的分钟.如何处理达到我的预期产量?
df<- read.table(header=TRUE,
text="
Company xxx yyyy zzzz cnt
abc 1 1 1 20
aaa 1 1 2 3
bbb 1 1 1 3
ddd 2 0 2 100
")
Run Code Online (Sandbox Code Playgroud)
我尝试下面的代码
final= df %>%
group_by(xxx,yyyy) %>%
summarise(Topcomp=Company[c(which(min(cnt)==cnt))])
Run Code Online (Sandbox Code Playgroud)
我越来越:
错误:期望单个值
我想要输出如下.
xxx yyyy Topcomp
<int> <int> <fctr>
1 1 1 aaa,bbb
2 2 0 ddd
Run Code Online (Sandbox Code Playgroud) 我尝试使用 go-kit (gokit.io) 并用它构建实际应用程序。我查看示例。这些例子很棒。但我不明白如何在 go-kit 框架中为通信/数据传输提供服务。
我可以看到“真实世界”的运输应用程序,但我不明白它怎么可能是“真实世界”的微服务。我可以在来源中看到,例如,他们构建的预订服务只是将外部存储库传递给服务
type service struct {
cargoRepository cargo.Repository
locationRepository location.Repository
routingService routing.Service
handlingEventRepository cargo.HandlingEventRepository
}
Run Code Online (Sandbox Code Playgroud)
然后他们从存储库中获取数据(这个存储库属于国外微服务),只需调用该方法:
locationRepository.Find(...)
有人可以解释我吗:
我认为这是因为他们只是共享对数据的直接访问。但在现实世界的微服务中,我预计微服务会相互通信以获取所需的数据。我不明白如何在 go-kit 框架中做到这一点。
我很难让一个图例出现在情节中,特别是ggplot + geom_line.
我正在使用plotly 3.6.0和ggplot2 2.1.0
为了演示我的问题,我将构建一个简单的数据框:
x = 1:5
y1 = 1:5
y2 = y1 * 2
d = data.frame(x, y1, y2)
g = ggplot(data = d, aes(x=x)) +
geom_line(aes(y = y1, col = 'y1')) +
geom_line(aes(y = y2, col = 'y2')) +
scale_color_manual(values = c('red', 'blue'), labels = c('y1 lab', 'y2 lab'), name = '')
g
Run Code Online (Sandbox Code Playgroud)
这将创建一个带有图例的 ggplot 图。但是,当我尝试使用 plotly 创建交互式版本时,图例不再存在。
ggplotly(g)
Run Code Online (Sandbox Code Playgroud)
我尝试了以下方法来解决问题:
g_build = plotly_build(g)
g_build$layout$showlegend <- TRUE
g_build$layout$margin <- list(l=80, r=300, …Run Code Online (Sandbox Code Playgroud) 我正在尝试实现 99% 的演示文稿使用的基本布局,其中幻灯片的标题下方是一些文本,然后是其下方的图像,旁边是文本。显然,这是在 rstudio 演示文稿中完成的一项非常困难的任务(此处的链接没有帮助)。我该怎么做?以下是我正在寻找的内容(用powerpoint制作):
这是我迄今为止尝试过的:
Title
====================================
incremental: false
<font color = "darkred">
Additional Text Goes Here</font>
<div align="center">
<img src="fake.png">
</div>
***
<p> </p>
<p> </p>
- Text goes here
- Text goes here
- Text goes here
Run Code Online (Sandbox Code Playgroud)
这显然产生了一个荒谬的结果:
当前输出的问题:
这是我解决这些问题的尝试:
Title
====================================
incremental: false
<p> </p>
<div style="margin-left: 1em;">
<font color = "darkred">
Additional Text Goes Here</font>
</div>
<p> </p>
<div align="center">
<img src="fake.png">
</div>
***
<p> </p>
<p> </p>
<p> </p>
- Text goes here
- …Run Code Online (Sandbox Code Playgroud) 在本sparklyr教程中,我遵循它,它说我可以用来compute()将前面语句的结果存储dplyr到新的 Spark 数据框中。
“代码 1”中的代码创建了一个名为“NewSparkDataframe”的新 Spark 数据框,并spark_tbl创建了一个我分配给“NewTbl”的数据框。我可以使用查看 Spark 数据框src_tbls()。这一切都在预料之中。
如果我运行“代码 2”而不使用compute()它,仍然会创建一个spark_tbl我再次分配给“NewTbl”的代码。但这一次我无法使用 Spark 查看新的 Spark 数据帧src_tbls()。
spark_tbl我想知道如果 Spark 中显然没有“NewSparkDataframe”,“ NewTbl”如何能够运行代码 2?
另外,如果我仍然可以访问使用“NewTbl”compute()新创建的相同内容,那么使用还有什么意义?spark_tbl
代码1:
NewTbl <- mySparkTbl %>%
some dplyr statements %>%
compute("NewSparkDataframe")
src_tbls(spark_conn)
"NewSparkDataframe"
Run Code Online (Sandbox Code Playgroud)
代码2:
NewTbl <- mySparkTbl %>%
some dplyr statements
src_tbls(spark_conn)
Run Code Online (Sandbox Code Playgroud) 我是 ggplot 的新手。我试图了解如何使用 ggplot。我正在阅读 Wickham 的书,但仍在努力思考如何使用aes()函数。
这两个实现之间有什么区别aes():
library(ggplot2)
ggplot(mpg, aes(displ, hwy, colour = class)) +
geom_point() +
geom_smooth(method = "lm", se = FALSE) +
theme(legend.position = "none")
Run Code Online (Sandbox Code Playgroud)
和
ggplot(mpg, aes(displ, hwy)) +
geom_point(aes(colour = class)) +
geom_smooth(method = "lm", se = FALSE) +
theme(legend.position = "none")
Run Code Online (Sandbox Code Playgroud)
他们都打印出明显不同的图表。有什么帮助吗?我真的被困住了。