我想在X,Y轴上使用非数字开发线框,但在Z轴上使用数字.
# mydata
set.seed(123)
yv <- rnorm(20, 10, 3)
gen <- rep(paste("G", 1:5, sep= ""), 4)
env <- c(rep(c("CA","MN","SD", "WI"), each = 5))
mdf <- data.frame(yv, gen, env)
Run Code Online (Sandbox Code Playgroud)
我试过用格子:
require(lattice)
wireframe(yv,gen, env, data = mdf)
Error in UseMethod("wireframe") :
no applicable method for 'wireframe' applied to
an object of class "c('double', 'numeric')"
Run Code Online (Sandbox Code Playgroud)
任何建议赞赏.
我有一个参数列表,并希望通过do.call调用B(var3 = list(1:3)).但是下面的示例仅调用dispatch"missing"的方法.如何访问调度方法"ANY"?
B.initialize<-function(..., var3=list()){
callSuper(..., var3=as.list(var3))
}
.B<-setRefClass(Class = "B"
,fields = list(var3 = "list")
,methods = list(initialize=B.initialize))
setGeneric("B", function(x, ...) standardGeneric("B"))
setMethod("B", "missing", function(x, ...) {
.B()
})
setMethod("B", "ANY", function(x, ...) {
.Part(var1=x, ...)
})
do.call(B,list(var3=list(1:3)))
Run Code Online (Sandbox Code Playgroud) 我想在plot.ts()图表上添加一条垂直线:
plot.ts(cbind(a, b, c, d, e, f, g, h),main="Time Series")
a<-seq(1:16);
b<-seq(1:16);
c<-seq(1:16);
d<-seq(1:16);
e<-seq(1:16);
f<-seq(1:16);
g<-seq(1:16);
h<-seq(1:16)
Run Code Online (Sandbox Code Playgroud)
我尝试过,abline(v=8.75)但这并没有达到我希望的目标。由于在具有此功能的图形窗口中有两列图形,因此我需要添加两条垂直线,每条垂直线一条。有任何想法吗?
我在数据框中有以下数据:
**x** in (0,1)
**y** in [0,1]
**z** in [0,1]
Run Code Online (Sandbox Code Playgroud)
例如:
X,Y,Z
0.1, 0.2, 0.56
0.1, 0.3, 0.57
...
Run Code Online (Sandbox Code Playgroud)
我想在这种类型的图表上绘制它们:

我试过R,但我能得到的只是一个不那么花哨的3D散点图.我还读到了格子3D线框,但我无法理解它.
我应该怎样做才能在R中获得类似线框的Matlab?涉及哪些数据转换?
这是文档中的示例代码:
x <- seq(-pi, pi, len = 20)
y <- seq(-pi, pi, len = 20)
g <- expand.grid(x = x, y = y)
g$z <- sin(sqrt(g$x^2 + g$y^2))
wireframe(z ~ x * y, g, drape = TRUE,
aspect = c(3,1), colorkey = TRUE)
Run Code Online (Sandbox Code Playgroud)
我不觉得特别清楚.
编辑:该persp3d功能工作正常,我能够生成一种颜色的三维图.如何设置相对于z值的色阶?
感谢任何提示,Mulone
例如,我应该在此表达式中添加什么:
xyplot(a~b, groups=abc, data=super,
scales=list(x=list(log=TRUE),y=list(log=TRUE)),
panel = panel.grid)
Run Code Online (Sandbox Code Playgroud)
为了有100而不是10 ^ 2?
在一个带有表格的RStudio闪亮应用程序中renderTable(),我想添加一个领先的单选按钮列(当然是被动的)并改变所选行的样式.什么是最好的策略?我认为如果绝对必要,我可以使用jQuery,但是不是更简单的方法吗?我已经尝试将html插入到renderTable()表达式args中的表格单元格中...不起作用.
我经常使用R来绘制3d图,例如如下所示.
X=seq(-3,3,0.05)
y=c(); for(i in X) { y=c(y,rep(i,length(X))) }
x=rep(X,length(X))
z=pmin(x,y)
library(lattice)
wireframe(z~x*y, shade=TRUE, scales=list(arrows=FALSE))
Run Code Online (Sandbox Code Playgroud)
这样可以很好地生成情节

但是有更自然/有效的方法来生成x和y向量吗?我想要一个类似"产品"操作符的东西,它给了我所有可能的配对.
我有以下代码,允许通过bwplot函数的分组垂直框图lattice.可重复的例子..
data(mpg, package = "ggplot2")
bwplot( hwy~class, data = mpg, groups = year,
pch = "|", box.width = 1/3,
auto.key = list(points = FALSE, rectangles = TRUE, space = "right"),
panel = panel.superpose,
panel.groups = function(x, y, ..., group.number) {
panel.bwplot(x + (group.number-1.5)/3, y, ...)
})
Run Code Online (Sandbox Code Playgroud)
这工作正常,但我希望箱图是水平的,所以我改变了第一行,保持其他一切相等:
bwplot( class~hwy, data = mpg, groups = year, ...
Run Code Online (Sandbox Code Playgroud)
但图表就是这样出来的
.我试过玩代码没有成功.我有两个问题:首先,我怎么能,或者是否可以让箱图不相互叠加?其次,更一般地说,如何将颜色面板设置为灰度,因此情节会以灰色或黑白色调出现?
我正在为 RStudio编写Shiny 教程。我更新了我的 RStudio,如教程中所述。我的当前版本是 0.98.945。当我运行提供的示例时,如runExample("01_hello"),它会打开我的 Web 浏览器并显示所有 HTML 内容,但似乎并未处理 R 代码。
当我在创建我自己的应用程序的教程中继续进行时runApp("App-1"),我在网页上收到一条错误消息:错误:找不到函数“fluidPage”。经过一番侦查,我在另一个站点上发现了一个帖子,指出我需要从 GitHub 下载 Shiny 的开发者版本,在这里找到。我运行了该安装的代码片段——但仍然没有运气。任何建议将不胜感激!
我正在构建一个R Shiny应用程序,有时会看到独立,有时会在另一个网页的iframe中查看.我想根据查看的位置有一个不同的.css文件,所以我需要添加一个JavaScript语句来选择正确的.css.我现在拥有的是:
ui.r
headerPanel(winowTitle="PageTitle",
list(tags$head(
tags$script('type = "text/javascript", if(window.self === window.top) {
tags$link(rel="stylesheet", type="text/css", href="FullSite.css")}
else{ tags$link(rel="stylesheet", type="text/css", href="InFrame.css"})'),
(other stuff that works)), etc
Run Code Online (Sandbox Code Playgroud)
当我运行它时应用程序工作,但它不读取.css文件.我究竟做错了什么?
谢谢