gpt4 book ai didi

r - 如何将插图(子图)添加到 R 图的 "topright"?

转载 作者:行者123 更新时间:2023-12-03 21:19:06 25 4
gpt4 key购买 nike

我想在占绘图区域(图形所在区域)宽度和高度的 25% 的绘图中插入一个插图。

我试过:

# datasets
d0 <- data.frame(x = rnorm(150, sd=5), y = rnorm(150, sd=5))
d0_inset <- data.frame(x = rnorm(1500, sd=5), y = rnorm(1500, sd=5))

# ranges
xlim <- range(d0$x)
ylim <- range(d0$y)

# plot
plot(d0)

# add inset
par(fig = c(.75, 1, .75, 1), mar=c(0,0,0,0), new=TRUE)
plot(d0_inset, col=2) # inset bottomright

这将插入到绝对顶部并且还使用设备宽度的 25%。如何将其更改为图形所在区域的坐标和宽度?

最佳答案

您可以使用 par("usr")得到情节的限制,
在用户坐标中,和 grconvert[XY]转换它们
归一化设备坐标(NDC,介于 0 和 1 之间),
在将它们与 par(fig=...) 一起使用之前.

plot(d0)
u <- par("usr")
v <- c(
grconvertX(u[1:2], "user", "ndc"),
grconvertY(u[3:4], "user", "ndc")
)
v <- c( (v[1]+v[2])/2, v[2], (v[3]+v[4])/2, v[4] )
par( fig=v, new=TRUE, mar=c(0,0,0,0) )
plot(d0_inset, axes=FALSE, xlab="", ylab="")
box()

Topright inset

关于r - 如何将插图(子图)添加到 R 图的 "topright"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17041246/

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