询问如何在 R 中使用 ggplot 制作世界热图?

2023-12-23

我想制作特定疾病的世界热图。该数据集包含国家/地区列表、纬度、经度和每个国家/地区的案例。数据可用here https://drive.google.com/file/d/1_EqMEZFHlujsg40gzEo83dN1zY9d9gAJ/view?usp=sharing。我想用世界热图来表示它,即病例数较高的国家应该有较深的颜色,而病例数较少的国家应该颜色变浅。 我使用 ggplot 和 geom_map 来创建相同的。代码如下所示:

library(maps)
library(plyr)
library(gridExtra)

h2 <- read_excel("mapdata1.xlsx")

world_map <- map_data("world")
world_map <- subset(world_map, region!="Antarctica")

gg <- ggplot(h2)
gg <- gg + geom_map(dat=world_map, map = world_map, aes(map_id=region), 
                    fill="white", color="#7f7f7f", size=0.25)
gg <- gg + geom_map(map = world_map, aes(map_id = Country, fill = Cases), size=0.25)
gg <- gg + scale_fill_gradient(low="#fff7bc", high="#cc4c02", name="Total Cases")
gg <- gg + expand_limits(x = world_map$long, y = world_map$lat)
gg <- gg + labs(x="", y="", title="World Hotspots")
gg <- gg + theme(panel.grid=element_blank(), panel.border=element_blank())
gg <- gg + theme(axis.ticks=element_blank(), axis.text=element_blank())
gg <- gg + theme(legend.position="top")
gg

当我运行代码时,它显示了热图,但某些国家(例如美国)的颜色是白色的,即使它的病例数量较多。我不明白为什么会这样?


原因很简单,美国在您的数据和世界地图上有不同的名称。

library(maps)
library(ggplot2)

mydata <- readxl::read_excel("your_path")

mydata$Country[mydata$Country == "United States"] <- "USA"

world_map <- map_data("world")
world_map <- subset(world_map, region != "Antarctica")

ggplot(mydata) +
  geom_map(
    dat = world_map, map = world_map, aes(map_id = region),
    fill = "white", color = "#7f7f7f", size = 0.25
  ) +
  geom_map(map = world_map, aes(map_id = Country, fill = Cases), size = 0.25) +
  scale_fill_gradient(low = "#fff7bc", high = "#cc4c02", name = "Total Cases") +
  expand_limits(x = world_map$long, y = world_map$lat)

Created on 2020-05-16 by the reprex package https://reprex.tidyverse.org (v0.3.0)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

询问如何在 R 中使用 ggplot 制作世界热图? 的相关文章

  • 扩展数据框以使其具有与原始行中两列的范围一样多的行[重复]

    这个问题在这里已经有答案了 我有一个数据框如下 structure list symbol c u n v i a start c 9L 6L 10L 8L 7L end c 14L 15L 12L 13L 11L Names c symb
  • R - 基于列名称的子集

    我的数据框有超过 120 列 变量 我想根据列名称创建子集 例如 我想创建一个子集 其中列名称包含字符串 心情 这可能吗 我一般用 SubData lt myData grep whatIWant colnames myData 我很清楚
  • 如何像在facet_grid中一样在facet_wrap中定位条带标签

    我想在使用时删除多余的条带标签facet wrap 并用两个变量进行分面 并且都是自由尺度的 例如 这个facet wrap下图的版本 library ggplot2 dt lt txhousing txhousing year in 20
  • HTTR GET 新错误:SSL 证书问题:证书已过期

    我已经运行这段代码几个月了 没有出现任何问题 今天我突然开始在我的两台 AWS 服务器上收到以下错误消息 错误 curl curl fetch memory url handle handle SSL证书问题 证书已过期 当尝试运行以下代码
  • 我如何查看 quantmod 包中所有可用的数据系列?

    如何显示可用的所有报价 数据系列的列表 例如使用雅虎的 getSymbols 我不知道有什么办法 TTR包有一个功能 stockSymbols 下载 NYSE AMEX 和 NASDAQ 的所有当前代码 它试图将它们采用雅虎可接受的格式 但
  • 将整个包传递给雪簇

    我正在尝试并行化 使用snow parLapply 一些依赖于包 即除snow 调用函数中引用的对象parLapply必须使用显式传递给集群clusterExport 有没有办法将整个包传递到集群 而不必显式命名每个函数 包括用户函数调用的
  • 使用“assign()”为列表项分配值

    首先了解一些背景 我写了一个中缀函数 本质上取代了这个习惯用法 x length x 1 lt y 或者简单地说x lt append x y 对于向量 这里是 lt function x y xcall lt substitute x x
  • 更改绘图区域背景颜色

    我想使用我们公司的颜色在 R 中制作一个图表 这意味着所有图表的背景应为浅蓝色 但绘图区域应为白色 我正在寻找答案 发现绘制一个矩形就可以完成这项工作 几乎 然而 绘图区域现在是白色的 并且图形不再可见 这可能吗 getSymbols SP
  • 闪亮井板宽度

    library shiny library shinydashboard ui lt dashboardPage dashboardHeader dashboardSidebar dashboardBody wellPanel tags d
  • 如何使用 dplyr 管道将额外参数传递给 purrr::map

    我有以下数据框和功能 param df lt data frame x 1 3 0 1 y 3 1 0 2 param df gt x y gt 1 1 1 2 8 gt 2 2 1 1 8 gt 3 3 1 0 8 my function
  • R 颜色 - 许多独特的颜色仍然很漂亮

    我很好奇你是否有一些关于 R 中颜色酿造的技巧 对于许多独特的颜色 在某种程度上图形仍然好看 我需要相当数量的独特颜色 至少 24 种 可能需要更多 50 种 用于堆叠区域图 所以不是热图 渐变颜色不起作用 我发现了 viridis 它的调
  • 计算字符串向量中连续数字的函数

    我想创建一个函数 它接受至少 1 个元素的字符串对象并包含数字 2 到 5 并确定是否存在至少 N 长度的连续数字 其中 N 是实际数字值 如果是 则返回字符串 true 否则返回字符串 false 例如 Input 555123 Outp
  • 如何使用 ggplotGrob 创建自定义图例?

    我发布了一个question https stackoverflow com questions 29174774 how to create legend text elements being different colours in
  • 上传到 Shiny 服务器后在 R 中解压文件

    我正在尝试在我们的本地服务器上使用 Shiny 来构建一个应用程序 允许用户上传包含 ESRI shapefile 和关联文件的 zip 文件 Shiny 服务器的 fileInput 可以获取数据 并且当它这样做时 它会将其存储在临时目录
  • 使用操作按钮在闪亮的 R 中添加包含现有数据框的新行

    我正在构建一个闪亮的表单 它将从 textInput 字段获取数据 并将这些输入与文本文件 将通过文件输入上传 组合起来 并在主面板中显示输出 有一个操作按钮用于第一次更新数据 从文本输入中获取数据并与处理后的文本文件合并 我添加了另一个操
  • 将文件名附加到 R 中的数据框

    我想将文件名附加到我的表中 但它似乎并没有真正起作用 我正在做的是迭代文件名列表 打开它们 将所有数据附加到一个数据帧 对于每个附加文件 我想添加其文件名 我希望将其附加到每一行 以便稍后当我查看数据时 我会知道给定行源自哪个文件 但似乎并
  • 如何在 R 中 fork 进程

    我试图了解 R 多核包实现的分叉系统 包的例子是 p lt fork if inherits p masterProcess cat I m a child Sys getpid n exit I was a child cat I m t
  • 用于安装 R 软件包的备用编译器:clang:错误:不支持的选项“-fopenmp”

    我正在尝试在 OS X 10 11 6 上使用 R 版本 3 4 0 安装 rJava 包 install packages rJava type source 我收到以下错误 clang o libjri jnilib Rengine o
  • 如何绘制 Voronoi 曲面细分的多边形而不是线段?

    我找到了一种使用 ggplot2 绘制 Voronoi 曲面细分的分段的方法 library deldir library ggplot2 library ggthemes set seed 123 df lt data frame lat
  • ggplot2 的 fortify 函数出错

    我在 ggplot2 中使用 fortify 方法时收到此错误 Error in function classes fdef mtable unable to find an inherited method for function pr

随机推荐

  • 使用 jQuery FlexSlider 添加或删除幻灯片

    是否可以在运行时添加或删除幻灯片弹性滑块 http flex madebymufffin com 新版本的弹性滑块2 https github com woothemes FlexSlider已经支持这种方法了 slider addSlid
  • 如何让Service Worker离线工作?

    我无法让我的 Service Worker 离线工作 无论我使用什么教程 我在我的 index html 文件中注册了服务工作者 如下所示
  • 如何在可扩展列表视图上插入标题行

    我有一个带有一个可扩展列表视图的 Android 活动 然后我创建了 ExpandableListAdapter 因此我可以单击一个项目 然后可以看到该项目的子项目 还行吧 现在我想为每个项目的子列表插入标准标题 标题 所以我构建了这段代码
  • “返回的颜色将针对指定上下文的主题进行样式设置”是什么意思?

    我最近注意到一个方法 Context getResources getColor int 自 API 23 起已弃用 应该使用 ContextCompat getColor context R color your color 文档对此说道
  • 如何使用重命名重构作为快速修复的一部分?

    我在 DSL 中添加了一个快速修复选项 我想在其中对文档文本进行一些修改 包括重命名某些元素 我可以很好地更改该元素中的文本 但我还想重命名其所有引用 即重命名重构 我怎么做 我可以以某种方式从快速修复内部触发内置的重命名重构吗 或者 如何
  • Gtk-消息:无法加载模块“canberra-gtk-module”

    我的 pygtk 程序将此警告写入 stderr Gtk Message Failed to load module canberra gtk module 自由堪培拉 http 0pointer de lennart projects l
  • MKMapView 无法缩放地图

    我创建了一个非常基本的应用程序 仅显示 MKMapView 和 UserLocation 我有时在绘制这张底图时遇到问题 它只显示地图的一部分 每当我捏缩放地图时 它都无法重新绘制 而只显示空白的灰色图块 每当需要获取新的地图图块时 控制台
  • OpenCV 不报告准确的帧速率/计数

    我有一个 33 秒的视频 正在尝试使用 OpenCV 进行处理 我的目标是确定每个帧对应的时间实例 相对于视频的开始 我这样做是为了能够比较以不同帧速率录制的同一场景的视频帧 什么在起作用 FPS 正确报告为 59 75 这与什么是一致的f
  • Google Cloud Bigtable 客户端连接池

    我通过制作一个虚拟 Web 应用程序来处理向 Bigtable 写入数据和从 Bigtable 读取数据的请求 对 Google Cloud Bigtable 进行了负载测试 一开始 我只使用单个 Bigtable 连接作为单例 并在所有线
  • Eclipse Web 项目依赖项

    这个问题是关于 Eclipse 开发的 我正在尝试在 Eclipse 中创建一个 Web 应用程序 问题是我没有将依赖项 jar 获取到部署的存档中 我创建了一个新的动态 Web 项目并将其链接到另一个 Java 项目 Java 项目引用了
  • 在 Google App 脚本中共享日历

    我正在尝试从电子表格构建日历 然后与域内的适当人员共享它们 我将其作为附加到电子表格的脚本来执行 到目前为止 我可以读取正确的单元格并构建包含事件的日历 但我遇到的问题是弄清楚如何与正确的人共享特定的日历 我四处搜索并找到了相同的通用代码来
  • 尝试对“$(MSBuildVersion)”进行数字比较,结果为“”而不是数字,条件为“$(MSBuildVersion) >= 16.1.0”)”

    当我尝试重新加载已卸载的项目时 出现此错误 如下图所示 它说这条线来自我的Microsoft Managed Core targets 我尝试更新我的 NuGet 包 我尝试将环境变量路径值更改为 msbuild exe 所在的位置 我尝试
  • 内层div的边距影响外层div

    我有三个嵌套的 DIV 元素 如下所示 div div div This br is br a br multiline br testcase br This br is br a br multiline br testcase br
  • 减少可执行文件大小的过程

    我正在生成一个在 ARM 处理器上运行的十六进制文件 我希望将其保持在 32K 以下 它目前比这个大得多 我想知道是否有人可以提供一些关于缩小它的最佳方法的建议 这是我到目前为止所做的 因此 我对其运行 size 以确定十六进制文件有多大
  • 逗号附近的语法不正确

    这是我尝试从会话中获取多个值时的 ASPX 代码片段 我收到错误 逗号附近的语法不正确 在代码片段中标记了该行 SqlCommand cmd1 new SqlCommand select plugin id from profiles pl
  • 根据 PEP257 自动检查文档字符串样式的工具[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 类似的工具pep8 http pypi python org pypi pep8可以检查源代码样式 但他
  • Kotlin 的构造函数重载

    因为我有一个User类有 2 个参数 first name last name 所以我的 kotlin 类是 data class User val first name String val last name String 现在我想要一
  • 高频调用 std::async 可以吗?

    我写了一个小程序 使用std async对于并行性 它让我崩溃了 我很确定有更好的方法可以做到这一点 但现在我只想知道这里发生了什么 我不会发布确切的代码 因为我认为它不会真正产生影响 它基本上看起来像这样 while 1 std vect
  • 如果文件已存在于 pyspark 中,如何覆盖 rdd saveAsPickleFile(path)?

    如何覆盖 当我们节省时间时 RDD 输出对象任何现有路径 test1 975078 56691 2 000 20171001 926 570 1322 975078 42993 1 690 20171001 926 570 1322 975
  • 询问如何在 R 中使用 ggplot 制作世界热图?

    我想制作特定疾病的世界热图 该数据集包含国家 地区列表 纬度 经度和每个国家 地区的案例 数据可用here https drive google com file d 1 EqMEZFHlujsg40gzEo83dN1zY9d9gAJ vi