gpt4 book ai didi

r - 控制等高线图中的 z 标签

转载 作者:行者123 更新时间:2023-12-01 14:04:14 25 4
gpt4 key购买 nike

我正在尝试控制在使用点阵库中的 contourplot() 绘制的等高线图中应写入多少 z 标签。
我有 30 条轮廓线,但我只想标记前 5 条。我尝试了很多东西,比如

contourplot(z ~ z+y, data=d3, cuts=30, font=3, xlab="x axis", ylab="y axis", scales=list(at=seq(2,10,by=2)))
contourplot(z ~ z+y, data=d3, cuts=30, font=3, xlab="x axis", ylab="y axis", at=seq(2,10,by=2))

但没有任何作用。

此外,是否可以在同一张图上绘制两个 contourplot()?我试过了

contourplot(z ~ z+y, data=d3, cuts=30)
par(new=T)
contourplot(z ~ z+y, data=d3, cuts=20)

但它不起作用。
谢谢!

最佳答案

这是我的看法:

library(lattice)
x <- rep(seq(-1.5,1.5,length=50),50)
y <- rep(seq(-1.5,1.5,length=50),rep(50,50))
z <- exp(-(x^2+y^2+x*y))

# here is default plot
lp1 <- contourplot(z~x*y)

# here is an enhanced one
my.panel <- function(at, labels, ...) {
# draw odd and even contour lines with or without labels
panel.contourplot(..., at=at[seq(1, length(at), 2)], col="blue", lty=2)
panel.contourplot(..., at=at[seq(2, length(at), 2)], col="red",
labels=as.character(at[seq(2, length(at), 2)]))
}

lp2 <- contourplot(z~x*y, panel=my.panel, at=seq(0.2, 0.8, by=0.2))
lp3 <- update(lp2, at=seq(0.2,0.8,by=0.1))
lp4 <- update(lp3, lwd=2, label.style="align")

library(gridExtra)
grid.arrange(lp1, lp2, lp3, lp4)

enter image description here

您可以调整自定义 panel 功能以最好地满足您的需求(例如,用于调平 z 轴的其他比例、颜色等)。

关于r - 控制等高线图中的 z 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5859422/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com