Tag: r

绑定的JavaScript(d3.js)shiny

首先,我对JavaScript和它的库d3.js相当不熟悉,但是我对R很熟悉。使用Shiny创build仪表板非常有趣和简单(感谢stackoverflow)。 现在我想通过连接d3元素来扩展它。 我正在寻找信息来源,关于如何实际绑定到shiny(R仪表板)的JavaScript和解释实际发生了什么。 背景:我在w3schools上做了关于js和jquery的教程,并且使用Scott Murray的书(交互式数据可视化为web)了解了d3。 我希望这足以让我理解有关如何在Shiny网站上构build自定义input/输出绑定的示例和解释: http://shiny.rstudio.com/articles/building-inputs.html 但不幸的是,我没有,我似乎无法find任何在最小工作代码的例子。 github上的很多例子对于我来说很复杂,很可能是因为我对javascript的一点经验。 以下是使用javascript自定义input绑定的示例: https://github.com/jcheng5/shiny-js-examples/tree/master/input 下面是我尝试展开的一个input和输出绑定的示例: <script src="../../../d3.v3.js"></script> <script type="text/javascript"> (function(){ // Probably not idiomatic javascript. this.countValue=0; // BEGIN: FUNCTION updateView = function(message) { var svg = d3.select(".d3io").select("svg") svg.append("text") .transition() .attr("x",message[0]) .attr("y",message[1]) .text(countValue) .each("end",function(){ if(countValue<100) { countValue+=1; $(".d3io").trigger("change"); } }) } // END: FUNCTION //BEGIN: OUTPUT BINDING var d3OutputBinding […]

如何指定facet_grid中的列或如何更改facet_wrap中的标签

我有大量的数据系列,我想绘制使用小倍数。 ggplot2和facet_wrap组合是我想要的,通常产生一个很好的小块6×6方面。 这是一个更简单的版本: 问题是,我没有足够的控制面标签中的标签。 数据框中列的名称很短,我想保持这种方式,但我希望facet中的标签更具描述性。 我可以使用facet_grid这样我就可以利用facet_grid函数,但是似乎没有直接的方法来指定列的数量,并且一长串facet不能用于这个特定的任务。 我错过了什么明显的? 问:如何在不更改列名的情况下使用facet_wrap更改构面标签? 或者,如何在使用facet_grid时指定列数和行数? 下面是一个简化例子的代码。 在现实生活中,我正在处理多个组,每个组包含数十个数据序列,每个数据序列都经常变化,所以任何解决scheme都必须自动化,而不是依靠手动赋值。 require(ggplot2) require(reshape) # Random data with short column names set.seed(123) myrows <- 30 mydf <- data.frame(date = seq(as.Date('2012-01-01'), by = "day", length.out = myrows), aa = runif(myrows, min=1, max=2), bb = runif(myrows, min=1, max=2), cc = runif(myrows, min=1, max=2), dd = runif(myrows, min=1, max=2), […]

invisible()函数做了什么?

R帮助将invisible()解释为“返回对象的临时不可见副本的函数”。 我很难理解什么是invisible() 。 你能解释什么是invisible() ,什么时候这个函数可以有用? 我已经看到了invisible()几乎总是用在print()方法函数中。 这里是一个例子: ### My Method function: print.myPrint <- function(x, …){ print(unlist(x[1:2])) invisible(x) } x = list(v1 = c(1:5), v2 = c(-1:-5) ) class(x) = "myPrint" print(x) 我在想,如果没有invisible(x) ,我就不能像这样做: a = print(x) 但事实并非如此。 所以,我想知道什么是invisible() ,它在哪里可以是有用的,最后在上面的方法print函数中它的作用是什么? 非常感谢您的帮助。

运算符“[< – ”在RStudio和R中

偶然我遇到了"[<-"运算符的奇怪行为。 它的行为有所不同,具体取决于调用的顺序,以及我是使用RStudio还是普通的RGui。 我会用一个例子来说明一下。 x <- 1:10 "[<-"(x, 1, 111) x[5] <- 123 据我所知,第一个分配不应该改变x (或者也许我错了?),而第二个应该做的。 而实际上上述操作的结果是 x [1] 1 2 3 4 123 6 7 8 9 10 但是,当我们以不同的顺序执行这些操作时,结果是不同的, x已经改变了! 意味深长: x <- 1:10 x[5] <- 123 "[<-"(x, 1, 111) x [1] 111 2 3 4 123 6 7 8 9 10 但只有当我使用普通的R才会发生! 在RStudio中,这两个选项的行为是相同的。 我已经检查了两台机器(一个与Fedora的一个与Win7),情况看起来完全一样。 我知道'function'版本( […]

knitr:如何防止文本在输出中打包?

编织到HTML时,我遇到了文本在knitr代码输出块中的包装问题。 例如,如果我运行以下: matrix(rnorm(60, 5, 2), ncol = 12) 在HTML中的输出将包装表,给出这样的输出,其中第12列被移动到其余的下方: ## [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] ## [1,] 3.407 0.8035 2.981 5.269 6.989 5.107 7.143 3.127 3.624 7.220 4.805 ## [2,] 3.907 5.5971 5.488 4.995 6.496 5.980 1.576 3.009 6.605 3.440 2.754 ## [3,] 1.945 3.7668 4.860 2.945 3.663 5.945 […]

〜的含义。 (波浪点)参数?

〜的含义是什么? R中的参数? 例如plot(~.,xyz..) 我已经在不同的情况下看到过这种说法,因为在谷歌上很难有意义地search符号,所以我没有取得什么成就。

如何告诉CRAN自动安装包依赖关系?

我在R中开发一个包,当我检查并在我的本地计算机中构build它时,它工作正常。 但是,当我在CRAN中尝试它,我得到一个包依赖性错误。 我的软件包取决于其他软件包的两个function。 如果我使用“ Depends或“ imports在description下列出了其他软件包,是否将自动安装新软件包? 或者我需要在我使用其他包的函数下显式地调用函数install.packages("packagename") 。 如果这一切都是错误的,那么解决R包依赖关系的最好方法是通过R CMD check并buildtesting并提交给CRAN? 谢谢。

ggplot2中的facet_wrap()和facet_grid()有什么区别?

我一直在阅读两个函数的ggplot2文档。 我想知道有什么区别,什么是正确的情况下使用每个函数( facet_wrap()和facet_grid() )。 library(ggplot2) p <- qplot(displ, hwy, data = mpg) p + facet_wrap(~ cyl) p + facet_grid(~ cyl) 我提供这个小例子作为起点。 差别似乎是包装使得情节更加自主和网格使一个情节一起。

用Rmultithreading?

阅读R-project网站,有一些(不清楚)引用multithreading与R,但目前还不清楚如何编译基本产品和CRAN库。 Revolution Analytics为Windows和Redhat提供了multithreading的基础(?)下载。 其他一些Linux发行版还会包含multithreadingR(和包)吗? 谢谢

子集Rdataframe导致神秘的NA行

我一直在遇到我认为是一个错误。 这不是什么大问题,但是我很好奇,如果有人看到这个。 不幸的是,我的数据是保密的,所以我不得不做一个例子,这不会是非常有帮助的。 在对数据进行子集化时,偶尔会得到不在我原始数据框中的神秘NA行。 连rownames都是NA。 例如: example <- data.frame("var1"=c("A", "B", "A"), "var2"=c("X", "Y", "Z")) example var1 var2 1 AX 2 BY 3 AZ 然后我运行: example[example$var1=="A",] var1 var2 1 AX 3 AZ NA<NA> <NA> 当然,上面的例子实际上并没有给你这个神秘的NA行, 我在这里添加它来说明我的数据有问题。 也许这与我正在使用Google的read.xlsx包导入我的原始数据集,然后在子集化之前执行wide到long 的整形有关 。 谢谢