我想使用ggplot2为地图上的每个位置生成一个条形图,就像xingmowang使用基本图形和许多包一样:
http://nzprimarysectortrade.wordpress.com/2011/10/02/let-r-fly-visualizing-export-data-using-r/

这与在图中嵌入微型图有关.
目前,我能做的最好的事情是在抖动的点图中将值与点大小匹配:
require(ggplot2)
require(maps)
#Get world map info
world_map <- map_data("world")
#Creat a base plot
p <- ggplot() + coord_fixed()
#Add map to base plot
base_world <- p + geom_polygon(data=world_map,
aes(x=long,
y=lat,
group=group))
#Create example data
geo_data <- data.frame(long=c(20,20,100,100,20,20,100,100),
lat=c(0,0,0,0,0,0,0,0),
value=c(10,30,40,50,20,20,100,100),
Facet=rep(c("Facet_1", "Facet_2"), 4),
colour=rep(c("colour_1", "colour_2"), each=4))
#Creat an example plot
map_with_jitter <- base_world+geom_point(data=geo_data,
aes(x=long,
y=lat,
colour=colour,
size=value),
position="jitter",
alpha=I(0.5))
#Add faceting
map_with_jitter <- map_with_jitter + facet_wrap(~Facet)
map_with_jitter <- map_with_jitter + theme(legend.position="none")
print(map_with_jitter)
Run Code Online (Sandbox Code Playgroud)

有一个不优雅的解决方法:
subset_data <- …Run Code Online (Sandbox Code Playgroud) 我试图在地图上绘制垂直条形图.我在线浏览了一些例子,但不知怎的.
我的数据目前采用以下格式:
University| Count | Category | lat | long
Run Code Online (Sandbox Code Playgroud)
这是我正在尝试执行的代码:
library(ggplot2)
library(ggmap)
library(ggsubplot)
df1 <- data.frame(
University = c(rep("University1", 4), rep("University2", 4), rep("University3", 4),
rep("University4", 4)),
Count = sample(1:10, 16, replace = T),
Category = rep(c("A", "B", "C", "D")),
lat = c(rep(10.902469, 4), rep(17.921959, 4), rep(18.606910, 4), rep(13.202366, 4)),
long = c(rep(76.90020, 4), rep(83.42510, 4), rep(73.87501, 4), rep(77.62340, 4))
)
india <- get_map("India", zoom = 5)
p <- ggmap(india)
p + geom_subplot(data = df1, mapping=aes(x = long, y = …Run Code Online (Sandbox Code Playgroud) 我试图在地图上绘制多个条形图,我只是在寻找一个开始的地方。我已经看过几个问题(如下所示)。
然而,所有这些似乎都过时了。
以下是我试图绘制的数据。我希望在一张地图上绘制 4 个地块,每个地理位置都有一个。我希望每个地块都是每个位置的每个目的的计数。
geoloc purpose count
1 Eastern Atlantic Behavior 4
2 Eastern Atlantic Impacts/Fisheries 7
3 Eastern Atlantic Knowledge 8
4 Eastern Atlantic Migration/Habitat Selection 2
5 Eastern Atlantic Movement 10
7 Eastern Pacific Behavior 1
8 Eastern Pacific Impacts/Fisheries 1
9 Eastern Pacific Knowledge 3
10 Eastern Pacific Migration/Habitat Selection 2
11 Eastern Pacific Movement 4
13 Southwestern Pacific Behavior 3
14 Southwestern Pacific Movement 7
15 Western Atlantic Behavior 8 …Run Code Online (Sandbox Code Playgroud) 我正在创建一个包含亚洲大陆分区统计图的新图形,但想在每个国家/地区上方添加条形图。理想情况下,我想创建这样的东西: https: //forum.generic-mapping-tools.org/t/how-to-plot-bar-charts-on-world-map/959
我知道这个问题之前已经被问过好几次了,但是这些问题似乎比较旧,并且使用了不再支持的软件包。我的方法是复制这个问题。
我从Eurostat下载了形状文件,并成功计算了形状文件地图中每个国家的质心:
library(sf)
library(tidyverse)
map <- read_sf(dsn = "C:/Users/Adrian/Desktop/PhD/Data/ne_50m_admin_0_countries",
layer = "ne_50m_admin_0_countries")
asia <- map[ map$CONTINENT %in% "Asia", ]
asia <- asia %>% mutate(centroids = st_centroid(st_geometry(.)))
asia <- asia %>% mutate(long = unlist(map(asia$centroids,1)) ,
lat = unlist(map(asia$centroids, 2)))
ggplot(data = asia) +
geom_sf() + coord_sf() +
geom_point(data = asia, aes(x = long, y = lat) ,
size = 2 )
Run Code Online (Sandbox Code Playgroud)
给予:
但我不知道如何继续。我想在地图上的每个中心点或附近添加一个条形图(避免任何重叠),并用一个小标签表示国家/地区。
像这样的东西:
library(reshape2)
data <- as.data.frame(asia)
data <- data %>%
select(GU_A3 , POP_EST …Run Code Online (Sandbox Code Playgroud)