如何解决如何在 R 中绘制特定的行和列
我的数据框包含 5 种犯罪类型(加上它们各自的发生次数)的列表,这些类型从 2019 年 1 月到 2020 年 10 月在英格兰的 9 个不同地区报告。
我想为每个区域单独绘制一个以犯罪事件为 Y 轴、以日期为 X 轴的图表,而不是分面图。
要做到这一点,我必须挑出我想要绘制的区域;我试过
df$region == "Region_name"
但是没有成功。 任何建议将不胜感激!
这是我正在使用的数据框示例:
structure(list(
Region = c("Yorkshire and The Humber","East of England","East Midlands","North East","South East","London","North West","South West","Yorkshire and The Humber","East of England"),Date = structure(c(18109,18383,17928,18293,18414,18536,18170,17987,18322,18140,18475,18231,18048,18353,18109,17897),class = "Date"),Crime = c("Violence and sexual offences","Robbery","Violence and sexual offences","Burglary","Theft","Anti-social behaviour","Theft"),Crime_occurrencies = c(21001L,177L,6033L,82L,2635L,24096L,590L,1536L,7388L,3205L,163L,981L,232L,5339L,6367L,3375L,3238L,257L,10982L,7906L)),class = "data.frame",row.names = c(NA,-20L))
解决方法
您可以像这样为每个区域创建一个线图:
library(ggplot2)
#Code
ggplot(df,aes(x=Date,y=Crime_occurrencies,color=Region))+
geom_line()+
geom_point()
输出:
更新:接下来的代码将为每个区域创建一个列表:
#Unique regions
uni <- unique(df$Region)
#Plot func
myplot <- function(x)
{
G <- ggplot(subset(df,Region==x),color=Crime))+
geom_line()+
geom_point()+
ggtitle(x)
G
}
#Apply
List <- lapply(uni,myplot)
只需在控制台上输入 List
即可显示所有绘图。
一些输出:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。