sách gpt4 ai đã đi

r - 如何计算ggplot2绘制的椭圆面积?

In lại 作者:行者123 更新时间:2023-12-04 11:55:24 26 4
mua khóa gpt4 Nike

在ggplot2中,在我使用stat_ellipse绘制椭圆图后,有没有办法计算这个椭圆的面积?这是代码和情节:

library(ggplot2)
set.seed(1234)
x <- rnorm (1:1000)
y <- rnorm (1:1000)
data <- cbind(x, y)
data <- as.data.frame(data)
ggplot (data, aes (x = x, y = y))+
geom_point()+
stat_ellipse()

nhập mô tả hình ảnh ở đây

1 Câu trả lời

您可以通过找到椭圆的长半轴和半短轴来计算椭圆的面积(如 this SO answer 所示):

# Plot object
p = ggplot (data, aes (x = x, y = y))+
geom_point()+
stat_ellipse(segments=201) # Default is 51. We use a finer grid for more accurate area.

# Get ellipse coordinates from plot
pb = ggplot_build(p)
el = pb$data[[2]][c("x","y")]

# Center of ellipse
ctr = MASS::cov.trob(el)$center # Per @Roland's comment

# Calculate distance to center from each point on the ellipse
dist2center <- sqrt(rowSums((t(t(el)-ctr))^2))

# Calculate area of ellipse from semi-major and semi-minor axes.
# These are, respectively, the largest and smallest values of dist2center.
pi*min(dist2center)*max(dist2center)

[1] 13.82067

关于r - 如何计算ggplot2绘制的椭圆面积?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38782051/

26 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com