在R Studio中使用填充的等高线进行网格.arrange
我用filled.contour函数创建了一些绘图。然后我想画两个相邻的图。因此我使用了grid.arrange函数。 这是我的代码:在R Studio中使用填充的等高线进行网格.arrange,r,R,我用filled.contour函数创建了一些绘图。然后我想画两个相邻的图。因此我使用了grid.arrange函数。 这是我的代码: install.packages("gridExtra") install.packages("lattice") install.packages("grid") library(lattice) library(gridExtra) library(grid) # Fake data x <- c(1:10) y <- c(1:10) z&
install.packages("gridExtra")
install.packages("lattice")
install.packages("grid")
library(lattice)
library(gridExtra)
library(grid)
# Fake data
x <- c(1:10)
y <- c(1:10)
z<-matrix(data=c(1:100), nrow=10, ncol=10, byrow = FALSE)
p1<-filled.contour(x,y,z, color = terrain.colors, asp = 1) # simple
# Lay out both plots
grid.arrange(p1,p1, ncol=2)
install.packages(“gridExtra”)
安装程序包(“lattice”)
安装程序包(“网格”)
图书馆(格子)
图书馆(gridExtra)
图书馆(网格)
#假数据
正如@eipi10所指出的,填充轮廓是基本图形,因此您应该使用基本排列函数,即par(mfrow=c(1,2))
并排排列两个图
编辑:显然,填充轮廓以击败所有布局尝试而闻名。我尝试了par(plt…
layout()
和par(mfrow…
我发现filled.countour3是一种解决方法,如下所述:
在这个网站上有问题14758391。很抱歉造成混淆,正如@eipi10所指出的,filled.contour是基本图形,因此您应该使用基本排列功能,即par(mfrow=c(1,2))
并排排列两个图
编辑:显然,填充轮廓以击败所有布局尝试而闻名。我尝试了par(plt…
layout()
和par(mfrow…
我发现filled.countour3是一种解决方法,如下所述:
在这个网站上有问题14758391。很抱歉造成混淆。contour
是一个基本的图形函数,而不是一个lattice
函数,并且不会生成一个grob或一个可以转换为grob的对象(尽管可能可以使用gridBase
包中的函数将其转换为grob)。如果您键入p1,还可以看到我的contourplot和levelplot的问题是,它们需要的输入与填充的.contour不同。filled.contour
是一个基本的图形函数,而不是lattice
函数,并且不会生成grob或可以转换为grob的对象(尽管可以使用gridBase
包中的函数将其转换为grob)。如果您键入p1,也可以看到我对contourplot和levelplot的问题,即它们需要的输入与填充的不同。contour。我尝试过。您会收到两个单独的绘图,而不是一个两者都有的绘图。好的。您能修改我的代码以使其正常工作吗?或者您能给我另一个示例代码吗?我非常感激。@rsl93;我的apo因此,在这种情况下,您不能使用mfrow
,因为函数已填充。contour
重复了plot.new()
调用。我建议使用我上面给出的链接中的方法(ps如果您查看代码中的p1
对象,则该对象为空,因此您无法将它们组合在一起:通常,您无法将基本R图指定给对象)我试过了。你收到了两个独立的绘图,而不是一个两个都有的绘图。好的。你能修改我的代码使其正常工作吗?或者你能给我另一个示例代码吗?我真的很感激。@rsl93;对不起,在这种情况下,你不能使用mfrow
,因为函数填充了。等高线
重复了plot.new()
通过它调用。我建议使用我上面给出的链接中的方法(ps,如果你在代码中查看p1
对象,它是空的,因此你不能将它们组合在一起:通常你不能为对象指定一个基R图)
install.packages("gridExtra")
install.packages("lattice")
install.packages("grid")
library(lattice)
library(gridExtra)
library(grid)
# Fake data (taken from the fill.contour help examples)
x <- c(1:10)
y <- c(1:10)
z<-matrix(data=c(1:100), nrow=10, ncol=10, byrow = FALSE)
p1<-filled.contour(x,y,z, color = terrain.colors, asp = 1) # simple
p1<-grob(p1)
is.grob(p1)
# Lay out both plots
grid.arrange(p1,p1, ncol=2)