geom_contour如何绘制等高线图?
时间: 2023-12-13 17:03:09 浏览: 220
等高线绘制
要绘制等高线图,需要使用`geom_contour`函数,并提供至少三个变量:x、y和z。其中,x和y是数据的两个维度,z是要绘制等高线图的值。以下是一个示例代码:
```R
library(ggplot2)
# 创建数据
x <- seq(-2*pi, 2*pi, length.out = 100)
y <- seq(-2*pi, 2*pi, length.out = 100)
z <- outer(x, y, function(x,y) sin(sqrt(x^2+y^2))/sqrt(x^2+y^2))
df <- data.frame(expand.grid(x, y), z = as.vector(z))
# 绘制等高线图
ggplot(df, aes(x, y, z = z)) +
geom_contour()
```
在上面的代码中,我们首先生成了一个二维的正弦函数,并将其作为数据框的一列。然后使用`ggplot`函数创建一个图形,并将x和y作为aes函数的参数,设置z作为颜色映射的变量。最后,使用`geom_contour`函数绘制等高线图。默认情况下,`geom_contour`函数会自动选择合适的等高线数量和间隔,但你也可以通过调整参数来控制等高线的数量和间隔。
阅读全文