我正在尝试使用facet_wrap 创建一些多重图。但是我不确定这是否是适合我的图表的正确方法。这是一个简短的可重现示例:
ggplot(airquality, aes(x = Day, y = Temp)) +
facet_wrap(~Month) +
geom_line()
Run Code Online (Sandbox Code Playgroud)
这会在这里产生这个图:
是否可以使用facet_wrap方法将第二行中的两个图“居中”?
请注意,我不想重新排序图,我只想将第二行居中
我试图在R中复制以下图片,特别是 ggplot2
我能够绘制红色的rss轮廓线,但我不知道如何绘制钻石(如左图所示)."预期输出"应该是一种绘制具有给定边长的钻石的方法.
编辑:这是一个简短的可重现的例子,在下面的图中随机添加钻石:
mlb<- read.table('https://umich.instructure.com/files/330381/download?download_frd=1', as.is=T, header=T)
str(mlb)
fit<-lm(Height~Weight+Age-1, data = as.data.frame(scale(mlb[,4:6])))
points = data.frame(x=c(0,fit$coefficients[1]),y=c(0,fit$coefficients[2]),z=c("(0,0)","OLS Coef"))
Y=scale(mlb$Height)
X = scale(mlb[,c(5,6)])
beta1=seq(-0.556, 1.556, length.out = 100)
beta2=seq(-0.661, 0.3386, length.out = 100)
df <- expand.grid(beta1 = beta1, beta2 = beta2)
b = as.matrix(df)
df$sse <- rep(t(Y)%*%Y,100*100) - 2*b%*%t(X)%*%Y + diag(b%*%t(X)%*%X%*%t(b))
base <- ggplot() +
stat_contour(data=df, aes(beta1, beta2, z = sse),breaks = round(quantile(df$sse, seq(0, 0.2, 0.03)), 0),
size = 0.5,color="darkorchid2",alpha=0.8) +
scale_x_continuous(limits = c(-0.4,1))+
scale_y_continuous(limits = c(-0.55,0.4))+
geom_point(data = points,aes(x,y))+
geom_text(data …Run Code Online (Sandbox Code Playgroud)