(4)绘制每加仑油行驶的英里数(mpg)、总马力(hp)和汽车自重(wt)3 个变量的 3D 散点图和气泡图.
时间: 2024-10-14 12:15:59 浏览: 78
在R中,你可以使用`ggplot2`包结合`geom_point()`和`geom_text()`来创建三维散点图(3D scatter plot)和气泡图(bubble chart)。这里假设你已经有了`mtcars`数据集中的mpg(每加仑英里数)、hp(总马力)和wt(汽车自重)这三个变量。下面是制作3D散点图和气泡图的步骤:
1. 首先加载所需包:
```r
if (!requireNamespace("rgl", quietly = TRUE)) install.packages("rgl")
library(rgl)
library(ggplot2)
```
2. 创建3D散点图:
```r
scatter3d <- function(df, x, y, z) {
open3d()
shade3d(df[, c(x, y, z)], colvar = df$z, alpha = I(.8), size = 3)
text3d(df[, c(x, y, z)], labels = rownames(df), side = "b", col = "black")
axis3d(side = 1)
axis3d(side = 2)
axis3d(side = 3, ticktype = "detailed")
}
scatter3d(mtcars, "wt", "hp", "mpg")
```
这会展示mpg, hp, 和wt之间的3D空间分布。
3. 制作气泡图(泡泡图):
```r
# 对hp做一个缩放以便于气泡大小的表示
scaled_hp <- mtcars$hp * log(mpg + 1)
bubble_plot <- ggplot(mtcars, aes(x=wt, y=mpg, size=scaled_hp, color=hp)) +
geom_point(alpha=.5) +
theme_minimal() +
scale_size(range=c(2, 10), guide="none") +
labs(title="Bubble Plot with MPG, HP, and Size Dependent on HP")
print(bubble_plot, type="rgl")
```
这将创建一个3D气泡图,气泡大小由总马力决定,颜色也反映了总马力。
注意:`rgl`包允许你在图形窗口交互查看,所以最后的`print`函数用于在RGL环境中查看。
阅读全文