首页 > 编程技术 > R语言

R语言绘制Vonoroi图的完整代码

发布时间:2021-6-21 00:00

deldir包绘制Voronoi图

#install.packages("deldir")
library(deldir)

# data
set.seed(1)
x <- runif(60)
y <- runif(60)

# Calculate Voronoi Tesselation and tiles
tesselation <- deldir(x, y)
tiles <- tile.list(tesselation)

plot(tiles, pch = 19,
     border = "black", #边界颜色
     showpoints = TRUE, #是否显示点
     fillcol = hcl.colors(60, "Sunset"))  #填充颜色

在这里插入图片描述

#改变图形的形状
#install.packages("polyclip")
library(polyclip)
# Circle环状
s <- seq(0, 2 * pi, length.out = 3000)
circle <- list(x = 0.5 * (1 + cos(s)),
               y = 0.5 * (1 + sin(s)))
plot(tiles, pch = 19,
     col.pts = "white",
     border = "black",
     fillcol = hcl.colors(60, "Sunset""),
     clipp = circle)

在这里插入图片描述
ggplot2绘制Voronoi图

library(ggvoronoi)
library(ggplot2)

set.seed(1)
x <- sample(1:600, size = 100)
y <- sample(1:600, size = 100)
dist <- sqrt((x - 200) ^ 2 + (y - 200) ^ 2)

df <- data.frame(x, y, dist = dist)

ggplot(df, aes(x, y)) +
  stat_voronoi(geom = "path",
               color = 6,    
               lwd = 0.7,   
               linetype = 1) 
  geom_point()

在这里插入图片描述

#添加热图
ggplot(df, aes(x, y, fill = dist)) +
  geom_voronoi() +
  geom_point() +
  scale_fill_gradient(low = "#20B2AA",
                      high = "#9370DB") #颜色

在这里插入图片描述

#添加边界线
ggplot(df, aes(x, y, fill = dist)) +
  geom_voronoi() +
  stat_voronoi(geom = "path") +
  geom_point()+
  scale_fill_gradient(low = "#20B2AA",
                      high = "#9370DB")
 #theme(legend.position = "none") # 去掉右侧图例标签

在这里插入图片描述

以上就是R语言绘制Vonoroi图的详细内容,更多关于R语言绘制Vonoroi图的资料请关注猪先飞其它相关文章!

标签:[!--infotagslink--]

您可能感兴趣的文章: