如何使用ggplots和地图添加自定义图例

JPMD

我正在尝试使用ggplot2绘制此地图

带有正确图例的地图

我可以使用ggplot2绘制地图,但不能显示图例:-(这是我的名为“ data”的数据:

              countries toplot     color
1             Argentina     -1       red
2               Armenia     -1       red
3             Australia     -1       red
4               Bahrain     -1       red
5              Botswana     -1       red
6               Belgium     -1       red
7              Bulgaria     -1       red
8                Canada     -1       red
9                 Chile     -1       red
10               Taiwan     -1       red
11              Croatia     -1       red
12       Czech Republic     -1       red
13     UK:Great Britain     -1       red
14                Egypt     -1       red
15              Denmark     -1       red
16              Finland      0    yellow
17               France      0    yellow
18              Georgia      0    yellow
19              Germany      0    yellow
20      China:Hong Kong      0    yellow
21              Hungary      0    yellow
22            Indonesia      0    yellow
23                 Iran      0    yellow
24              Ireland      0    yellow
25               Israel      0    yellow
26                Italy      0    yellow
27                Japan      0    yellow
28               Jordan      0    yellow
29           Kazakhstan      1 darkgreen
30                Korea      1 darkgreen
31               Kuwait      1 darkgreen
32              Lebanon      1 darkgreen
33            Lithuania      1 darkgreen
34             Malaysia      1 darkgreen
35                Malta      1 darkgreen
36              Morocco      1 darkgreen
37          Netherlands      1 darkgreen
38          New Zealand      1 darkgreen
39  UK:Northern Ireland      1 darkgreen
40               Norway      1 darkgreen
41                 Oman      1 darkgreen
42            Palestine      1 darkgreen
43               Poland      1 darkgreen
44             Portugal      1 darkgreen
45                Qatar      1 darkgreen
46               Russia      1 darkgreen
47         Saudi Arabia      0    yellow
48               Serbia      0    yellow
49            Singapore      0    yellow
50      Slovak Republic      0    yellow
51             Slovenia     -1       red
52         South Africa     -1       red
53                Spain     -1       red
54               Sweden     -1       red
55             Thailand      1 darkgreen
56               Turkey      1 darkgreen
57 United Arab Emirates      0    yellow
58                  USA      1 darkgreen

这是我正在使用的代码:

    library(maps)      
    library(ggplot2)

    map <- map_data("world")

    # create a blank ggplot theme
    theme_opts <- list(theme(panel.grid.minor = element_blank(),
                             panel.grid.major = element_blank(),
                             panel.background = element_blank(),
                             plot.background = element_blank(),
                             panel.border = element_blank(),
                             axis.line = element_blank(),
                             axis.text.x = element_blank(),
                             axis.text.y = element_blank(),
                             axis.ticks = element_blank(),
                             axis.title.x = element_blank(),
                             axis.title.y = element_blank(),
                             legend.position="bottom",
                             plot.title = element_text(size=16)))

   mapplot<-ggplot() + 
      geom_polygon(data = map, aes(x=long, y = lat, group = group), fill = NA, colour="darkgray", size=0.25)+
      geom_map(data=data,map=map,aes(map_id=country, x=lon, y=lat),fill = data$color, colour = "gray") +
      coord_equal() +
      theme_opts   

    mapplot + theme(legend.position = "bottom")

我接近预期的图例是将传递fillaes

aes(map_id=country, x=lon, y=lat, fill = data$color)

在此处输入图片说明但是然后我得到了错误的颜色和错误的文本...。我想知道是否可以将图例框添加到ggplot中吗?像这样:

legdtxt<-c("Below mean", "At mean", "Above mean")
ggplot()+
legend("bottomleft", legdtxt, horiz = F, fill = plotclr, box.lty=0)

谢谢!...

万登曼

这似乎可行:

ggplot(data = data) +
  geom_polygon(data = map, aes(x=long, y = lat, group = group), fill = NA, colour="darkgray", size=0.25) +
  geom_map(data = data, map = map, aes(map_id = countries, fill = color)) +
  coord_equal() +
  theme_opts +
  theme(legend.title = element_blank()) + # omit plot title saying 'color'
  scale_fill_manual(values = c('darkgreen', 'red', 'yellow'),
                    labels = c('Above Mean', 'At Mean', 'Below Mean'))

geom_map和你的之间有些差异同样,scale_fill_manual可以使用来切换颜色的含义。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何创建自己的自定义地图

来自分类Dev

将自定义数字添加到ggplot图例

来自分类Dev

如何使用Cartopy将自定义shapefile添加到地图

来自分类Dev

使用自定义值验证地图

来自分类Dev

如何在地图和自定义方法中使用&:符号表示法?

来自分类Dev

在ggplot2中添加具有自定义图例的点和线层

来自分类Dev

如何使用Hibernate / JPA保留自定义地图?

来自分类Dev

地图和自定义分配器的地图

来自分类Dev

如何在Apple Watch的地图视图中添加自定义地图图钉?

来自分类Dev

如何使用Google脚本自定义图表的图例

来自分类Dev

自定义图例/图像作为传单地图中的图例

来自分类Dev

使用JAXB解组自定义地图

来自分类Dev

如何自定义BoxAndWhisker图的图例

来自分类Dev

将自定义图例添加到bokeh Bar

来自分类Dev

如何在此自定义facet_wrap中添加geom_quantile图例?

来自分类Dev

将自定义图例添加到fourfold()

来自分类Dev

如何在R中添加自定义图例?

来自分类Dev

R:将自定义图例添加到ggplot

来自分类Dev

如何在ggplot中为地图中的多个图层自定义图例?

来自分类Dev

将自定义ggplot图例添加到虚线和置信带中

来自分类Dev

在C ++中创建自定义地图类时,如何在模板中定义和使用比较器

来自分类Dev

Google地图:使用自定义按钮

来自分类Dev

Python自定义标题和图例

来自分类Dev

如何使用添加的排序和自定义按钮创建数据表?

来自分类Dev

如何将自定义地图和自定义数据添加到Highmaps?

来自分类Dev

使用JAXB解组自定义地图

来自分类Dev

如何在自定义中插入和添加自定义行?

来自分类Dev

如何创建自定义 Google 地图

来自分类Dev

我们如何使用添加和删除图标自定义@material ui <ExpansionPanelSummary> expandIcon?

Related 相关文章

  1. 1

    如何创建自己的自定义地图

  2. 2

    将自定义数字添加到ggplot图例

  3. 3

    如何使用Cartopy将自定义shapefile添加到地图

  4. 4

    使用自定义值验证地图

  5. 5

    如何在地图和自定义方法中使用&:符号表示法?

  6. 6

    在ggplot2中添加具有自定义图例的点和线层

  7. 7

    如何使用Hibernate / JPA保留自定义地图?

  8. 8

    地图和自定义分配器的地图

  9. 9

    如何在Apple Watch的地图视图中添加自定义地图图钉?

  10. 10

    如何使用Google脚本自定义图表的图例

  11. 11

    自定义图例/图像作为传单地图中的图例

  12. 12

    使用JAXB解组自定义地图

  13. 13

    如何自定义BoxAndWhisker图的图例

  14. 14

    将自定义图例添加到bokeh Bar

  15. 15

    如何在此自定义facet_wrap中添加geom_quantile图例?

  16. 16

    将自定义图例添加到fourfold()

  17. 17

    如何在R中添加自定义图例?

  18. 18

    R:将自定义图例添加到ggplot

  19. 19

    如何在ggplot中为地图中的多个图层自定义图例?

  20. 20

    将自定义ggplot图例添加到虚线和置信带中

  21. 21

    在C ++中创建自定义地图类时,如何在模板中定义和使用比较器

  22. 22

    Google地图:使用自定义按钮

  23. 23

    Python自定义标题和图例

  24. 24

    如何使用添加的排序和自定义按钮创建数据表?

  25. 25

    如何将自定义地图和自定义数据添加到Highmaps?

  26. 26

    使用JAXB解组自定义地图

  27. 27

    如何在自定义中插入和添加自定义行?

  28. 28

    如何创建自定义 Google 地图

  29. 29

    我们如何使用添加和删除图标自定义@material ui <ExpansionPanelSummary> expandIcon?

热门标签

归档