gpt4 book ai didi

r - 使用 ggplot 绘制 parking 场占用的 parking 位

转载 作者:行者123 更新时间:2023-12-01 16:52:07 26 4
gpt4 key购买 nike

我想使用 ggplot 绘制以下场景的网格图,我试图在下图中描绘该场景......我可以使用一些关于如何逻辑地思考该方法的指导。谢谢您的指导。

--

下面示例图中的每个过道都有奇数边和偶数边
奇数一侧的空格从 1…K 升序排列,其中 K 为奇数
偶数一侧的空格从 2…N 升序排列,其中 N 是偶数
parking 场的每条过道都存在这种模式

如果汽车停在某个 parking 位,我们会在数据库中跟踪该位置。

如何重现网格级 ggplot,以在绘图上用符号指示所有停放汽车的空间?

Parking Lot Example

占用空间的列表将通过 .csv 文件“馈送到”ggplot 逻辑中:.csv 的格式如下所示:

A01
A04
A05
A08
A09
A15
A20
A33
B07
B31
B44
C01
C04
C36
...

图片来源:Michael Layefsky,2010,Google 图片

最佳答案

我直接使用grid的经验有限,所以我不能说使用grid函数有多难,但在中似乎相当简单>ggplot2。这是一个简单的示例,(我希望)与您正在寻找的内容相距不远:

library(ggplot2)

# Set up grid of space identifiers
df = data.frame(y=1:10, x=rep(c(0:1, 3:4, 6:7), each=10),
space=paste0(rep(c("A","B","C"), each=20),
rep(c(seq(2,20,2),seq(1,20,2)), 3)),
stringsAsFactors=FALSE)

# Assume we have a vector of occupied spaces
set.seed(194)
occupied = sample(df$space, 30)

# Mark occupied spaces in data frame
df$status = ifelse(df$space %in% occupied, "Occupied", "Available")

ggplot(df) +
geom_segment(aes(x=x - 0.5, xend=x + 0.5, y=y, yend=y - 1)) +
geom_label(aes(label=space, x=x, y=y, fill=status), colour="blue", label.size=0) +
annotate(geom="segment", x=seq(0.5,6.5,3), xend=seq(0.5,6.5,3),
y=rep(0,3), yend=rep(10,3), lty="11") +
theme_bw(base_size=14) +
scale_fill_manual(values=c(hcl(c(105,15),100,65))) +
#scale_fill_manual(values=c(NA, hcl(15,100,65))) + # Color only occupied spaces
theme(axis.text = element_blank(),
axis.ticks = element_blank(),
panel.grid = element_blank()) +
labs(x="",y="",fill="")

enter image description here

关于r - 使用 ggplot 绘制 parking 场占用的 parking 位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34559952/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com