美文网首页数据可视化
R使用ggplot2绘制等高线图/等距离图

R使用ggplot2绘制等高线图/等距离图

作者: 纷纷不可诉 | 来源:发表于2022-12-20 17:01 被阅读0次

等高线其实是可视化中非常常见的一种数据表现方式,不仅仅用于地理学,多种反应空间平面下属性梯度变化的情况均可以很好的使用。建议稍微有ggplot2基础,不然我推荐用excel其实也能搞定。

1. R base的函数contour()

很简单,数据的数据需要有三列x,y,属性值(z值/表达量/距离等)


效果示意

操作简单,但是图也同样简单,所以也不大符合我们的预期

2. ggplot2绘制等高线图

通过ggplot2绘制需要搭载一个ggisoband的包
安装:

devtools::install_github("clauswilke/ggisoband")

使用:

library(ggplot2)
library(ggisoband)
# 数据 同样就是一个x,y, z/其他属性的数据框
volcano3d <- reshape2::melt(volcano)
names(volcano3d) <- c("x", "y", "z")
# 可视化1
ggplot(volcano3d, aes(x, y, z = z)) +
  geom_isobands(aes(color = stat(zmin)), fill = NA) +
  scale_color_viridis_c() +
  coord_cartesian(expand = FALSE) +
  theme_bw()
# 可视化2
ggplot(volcano3d, aes(x, y, z = z)) +
  geom_isobands(aes(fill = stat(zmin)), color = NA) +
  scale_fill_viridis_c(guide = "legend") +
  coord_cartesian(expand = FALSE) +
  theme_bw()

效果展示:

可视化1效果
可视化2效果
包的信息具体可以参考:https://github.com/clauswilke/ggisoband
有其他问题欢迎评论区交流~

相关文章

网友评论

    本文标题:R使用ggplot2绘制等高线图/等距离图

    本文链接:https://www.haomeiwen.com/subject/infpqdtx.html