使用 R 中的工具提示绘制县级数据

2023-11-27

我在 www.betydb.org 上看到了美国县级的交互式分区统计图。我想使用 R 重现类似的地图。我只想要地图和工具提示(不是不同缩放级别的所有图块,或者切换地图的能力)

该地图当前创建于ruby,弹出窗口(左下角)查询 MySQL 数据库。写它的程序员已经离开了,我对 Ruby 也不熟悉。

map

在这里,我将从 csv 文件开始。数据包括州和县名称以及州和县 FIPS。我想绘制Avg_yield.

mydata <- read.csv("https://www.betydb.org/miscanthus_county_avg_yield.csv")
colnames(mydata)
#  [1] "OBJECTID"    "Join_Count"  "TARGET_FID"  "COUNTY_NAME" "STATE_NAME"  "STATE_FIPS" 
#  [7] "CNTY_FIPS"   "FIPS"        "Avg_lat"     "Avg_lon"     "Avg_yield"  

我可以使用以下方法在州一级进行绘图googleVis package

library(googleVis)
p <- gvisGeoChart(data = mydata, locationvar="STATE_NAME", colorvar = 'Avg_yield',
                  options= list(region="US", displayMode="regions", 
                  resolution="provinces"))
plot(p)

enter image description here

这提供了状态级着色。我的问题是,如何在县级(而不是州级)分辨率下获得类似颜色和工具提示的内容?

The gvisGeoChart帮助(在区域和分辨率下)和谷歌图表文档表明这可能是不可能的,但文档是如此广泛,以至于不清楚我在 R 中的其他选项是什么。

那么,有没有办法获得带有工具提示和县级着色的地图呢?


这是2013年的问题。我不确定是否leaflet当时包裹已经出来了。现在已经2017年年底了,你的任务是有可能完成的。如果您仍然需要执行类似的任务,我想为您留下以下内容。在本例中,数据集中缺少一些县。这些县存在于 USA 多边形数据中,但在mydata。所以我将这些县添加到mydata using setdiff() and bind_rows()。当您绘制传单地图时,您需要指定您的调色板。Avg_yield是一个连续变量。所以你用colorNumeric()。我留下了显示传单地图一部分的屏幕截图。

library(raster)
library(leaflet)
library(tidyverse)

# Get USA polygon data
USA <- getData("GADM", country = "usa", level = 2)

### Get data
mydata <- read.csv("https://www.betydb.org/miscanthus_county_avg_yield.csv",
                   stringsAsFactors = FALSE) %>%
          dplyr::select(COUNTY_NAME, Avg_yield)

### Check counties that exist in USA, but not in mydata
### Create a dummy data frame and bind it with mydata

mydata <- data.frame(COUNTY_NAME = setdiff(USA$NAME_2, mydata$COUNTY_NAME),
                     Avg_yield = NA,
                     stringsAsFactors = FALSE) %>%
          bind_rows(mydata)

### Create a color palette
mypal <- colorNumeric(palette = "viridis", domain = mydata$Avg_yield)

leaflet() %>% 
addProviderTiles("OpenStreetMap.Mapnik") %>%
setView(lat = 39.8283, lng = -98.5795, zoom = 4) %>%
addPolygons(data = USA, stroke = FALSE, smoothFactor = 0.2, fillOpacity = 0.3,
            fillColor = ~mypal(mydata$Avg_yield),
            popup = paste("Region: ", USA$NAME_2, "<br>",
                          "Avg_yield: ", mydata$Avg_yield, "<br>")) %>%
 addLegend(position = "bottomleft", pal = mypal, values = mydata$Avg_yield,
           title = "Avg_yield",
           opacity = 1)

enter image description here

enter image description here

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

使用 R 中的工具提示绘制县级数据 的相关文章

  • python 相当于 R 中的 get() (= 使用字符串检索符号的值)

    在 R 中 get s 函数检索名称存储在字符变量 向量 中的符号的值s e g X lt 10 r lt XVI s lt substr r 1 1 X get s 10 取罗马数字的第一个符号r并将其转换为其等效整数 尽管花了一些时间翻
  • 以编程方式将字符串宽度值插入到 sprintf() 中

    我正在尝试以编程方式将字符串宽度值插入到sprintf 格式 期望的结果是 sprintf 20s hello 1 hello 但我想插入20在同一通话中即时进行 因此它可以是任何号码 我努力了 sprintf ds 20 hello 1
  • 实三次多项式的最快数值解?

    R 问题 寻找最快的方法来数值求解一堆已知具有实系数和三个实根的任意三次方程 据报道 R 中的 polyroot 函数对复杂多项式使用 Jenkins Traub 算法 419 但对于实多项式 作者参考了他们早期的工作 对于实三次或更一般的
  • 任意列中包含字符串的子集行

    我有一个如下所示的数据集 Col1 Col2 Col3 abckel NA 7 jdmelw njabc NA 8 jdken jdne 如何对数据集进行子集化 使其仅保留包含字符串 abc 的行 最终预期输出 Col1 Col2 Col3
  • 使用 Python 绘制 2D 核密度估计

    I would like to plot a 2D kernel density estimation I find the seaborn package very useful here However after searching
  • 删除字符串中的转义符,或者“我怎样才能让 \ 不碍事?”

    转义字符在 R 中会带来很多麻烦 前面的问题证明了这一点 更改列中的值 https stackoverflow com questions 10046357 change the values in a column 10046412 10
  • 在 Google 地图中映射 400MB KML 数据 - 如何?

    Re 我有一个 400MB 大的 KML 文件 1 周的旅行和 5000 公里的记录 它已经去除了非必要的数据 压缩后的 GPX 文件大小约为 80MB 或 2 5MB KML 文件大约 30MB 我不确定有多少个航点 但肯定有数十万个 我
  • Google 地理编码——解析可能返回不同结果的地址组件

    我正在使用 Google 地图 V3 api 我正在提交地址搜索以返回正确的地理编码结果 包括地址 机构名称和纬度 经度 我的问题是地理编码器的响应可以采用不同的格式 它始终遵循相同的结构 但某些响应对地址组件数据结构使用不同的键 例如 某
  • 什么时候在“strsplit”中设置“perl=TRUE”不起作用(按预期或根本不起作用)?

    我只是在尝试优化一些代码时做了一些基准测试并观察到strsplit with perl TRUE is faster比跑步strsplit with perl FALSE 例如 set seed 1 ff lt function paste
  • 为什么 statsmodels 和 R 的逻辑回归结果不同?

    我正在尝试比较 python 的 statsmodels 和 R 中的逻辑回归实现 Python版本 import statsmodels api as sm import pandas as pd import pylab as pl i
  • R:大向量的高效迭代子集和过滤

    我想更快地执行以下操作 Logic 我有一个向量big共 4 个元素1 2 3 4 我还有一个相同长度的阈值向量1 1 3 1 4 1 5 1 我希望每个元素找到第一个元素的索引next元素高于相应的阈值 在这种情况下 我的预期输出是 2
  • 如何处理“不符合”的数组?

    如何对两个数组进行逐元素算术运算 在第一维度中一致 但也有一个额外的维度 示例 乘法数组a 3 x 3 x 2 按数组b 3 x 3 a lt array 1 18 dim c 3 3 2 b lt diag 3 由于数组不一致 因此以下操
  • dplyr / left_join 中的嵌套管链

    在尝试获取分组滞后变量的过程中 仅使用这是不可能的 lag 建议的解决方案是将数据拉出 滞后不同的行 然后重新加入它 我更喜欢在不创建中间对象的情况下执行此操作 并且希望在链中间执行此操作 然而 它似乎没有像我预期的那样工作 问题似乎是使用
  • 如何从谷歌地图中的纬度和经度获取地址位置? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 所以我有纬度和经度就像44 4647452 and 7 3553838 我需要获得如下地址 米兰 意大利 str 肯尼迪 89 我怎样才能
  • 指定 R 中 hist() 中的 bin 数量?

    我尝试指定垃圾箱的数量hist R为10 如下 gt hist x breaks 10 但垃圾箱的数量并不完全是 10 我尝试了几个其他数量的垃圾箱 结果发生了同样的情况 hist says breaks可以指定 给出直方图单元格数量的单个
  • 如何调整ggplot直方图的时间刻度轴

    我正在使用一个数据框 其中一列包含POSIXct日期时间值 我正在尝试使用绘制这些时间戳的直方图ggplot2但我有两个问题 我不知道如何设置 binwidthgeom histogram 我想将每个垃圾箱设置为一天或一周 我尝试提供 di
  • 将summary()写入as.data.frame以在ggplot / R中使用

    请查找 af 数据样本t below 我正在使用以下方法进行竞争风险分析etmCIF来自etm package 产生以下结果 这很好 但需要更好的图形 曾经有一个ggtrans etm函数将数据导入ggplot 然而 这个功能显然被删除了
  • R read_excel:libxls 错误:无法解析文件

    我试图使用 readxl read excel 将 xls 文件读入 R 但它给出了以下错误 Error filepath data xls libxls error Unable to parse file 还尝试了 readxl exc
  • R 中的 NA 替换函数

    我正在尝试替换矩阵中的 NA mat 零 我在用着mat is na mat lt 0 当我有 18946 个变量的 94531 个观察值或更小的矩阵时 效果很好 但我在 22752 个变量的 112039 个观察值的矩阵上尝试它 R 显示
  • 用于清除工作空间和转储存储的 R 全局函数

    我希望创建一个全局函数来清除我的工作区并转储我的内存 我将我的函数称为 cleaner 并希望它执行以下代码 remove list ls gc 我尝试在全局环境中创建该函数 但是当我运行它时 控制台仅打印该函数的文本 在我要获取的函数文件

随机推荐

  • AngularJS 中的 jQuery 触发器等效项

    我在我的项目中使用 AngularJS 但我不想包含 jQuery 我想在 AngularJS 中执行与此等效的 jQuery someclass trigger create 我在互联网上搜索但找不到 AngularJS 内置了 jqLi
  • 动态更新的 ng2-charts

    是否可以更新任何chart from ng2 charts动态地 我知道还有其他图书馆 比如angular2 highcharts 但我想用它来处理它ng2 charts 主要问题是如何重绘chart 点击按钮后 我可以调整窗口大小并且数据
  • Linux UDP接收缓冲区最大大小

    Linux UDP 接收缓冲区的最大大小是多少 我以为它仅受可用 RAM 的限制 但是当我设置时 rmem max 为 5GB echo 5000000000 gt proc sys net core rmem max 实际套接字缓冲区为
  • 在dygraph中显示平均值的水平线

    我正在尝试向已显示时间序列数据的 dygraph 添加一条水平线 我有完整数据的平均值 我想将其显示为动态图上的静态水平线 有谁知道如何简单地做到这一点 我已经检查了以下链接 http dygraphs com tests highligh
  • 为什么从 AT&T 语法切换到 Intel 语法会使本教程在使用 GAS 时出现段错误?

    我正在完成一些教程http www ibm com developerworks linux library l gas nasm index html熟悉 x86 x64 本教程代码使用提供的代码进行编译和运行 不会出现任何问题 该代码使
  • 从python中的类列表中随机选择x个项目

    在 jython 中 我有一类定义如下的对象 class Item def init self pid aisle bay hits qtyPerOrder self pid pid self aisle int aisle self ba
  • 无法创建新环境,出现 CondaVerificationError:ncurses 包已损坏

    我在尝试创建新环境时收到此错误 IE conda create n jupyter python 3 6 y Preparing transaction done Verifying transaction failed CondaVeri
  • 使用 FileSaver.js 保存 PNG 文件

    我正在尝试使用 FileSaver js 下载从我的 Express 应用程序提供的 PNG 文件 这些文件作为 base64 编码的字符串发送 但是当我尝试使用 FileSaver js 保存它们时 它们会损坏 这就是我试图拯救他们的方式
  • 电子邮件意图的附加功能 - 首选项 XML

    我想从 xml 首选项屏幕触发电子邮件 并附加预定义的主题并将光标启动到电子邮件应用程序的正文字段中 这是我到目前为止所得到的
  • Numpy 或 SciPy 非均匀间距的导函数?

    我想知道 numpy 或 scipy 的库中是否有一种方法可以查找具有非均匀间距的值列表的数值导数 这个想法是输入与值相对应的时间戳 然后使用时间戳来查找数值导数 您可以使用 numpy 创建自己的函数 对于使用前向差异的导数 感谢 EOL
  • 如何正确获取 CGColor 的颜色分量

    我有一个黑色的 UILabel 我正在编写以下代码来获取黑色的组件 UIColor aColor aLabel textColor retain const CGFloat components CGColorGetComponents a
  • cURL:操作在 0 毫秒后超时

    cURL 给我错误 Operation timed out after 0 milliseconds with 0 out of 0 bytes received 特别是 0毫秒 部分很可疑 我的初始化代码 curl curl init r
  • 如何将参数(action.payload)传递给 ngrx/effects 中的服务?

    我是 ngrx 6 的新手 效果将侦听操作 LOAD COURSE DETAILS 并应使用 course id action payload 调用服务 但我收到错误 Action 类型中缺少属性 toFixed 但是 如果我执行 cons
  • 安装 ASP.NET 和 Web Tools 2015 后,Visual Studio 出现错误“对象引用未设置为对象的实例”

    安装 ASP NET 和 Web Tools 2015 RC1 更新 1 后 打开 ASP NET MVC 4 项目时出现以下错误 cshtml files 未将对象引用设置为对象的实例 即使我启动一个新的 ASP NET MVC 4 项目
  • Eclipse 中的 Egit 导入显示运行时错误

    我尝试制作一个非常简单的 hello world 在 Eclipse 中使用 Egit 导入 我没有发现任何证据表明该软件无法正常工作 在谷歌中没有发现错误 所以看起来我犯了一些我不知道的错误 我按照此处定义的步骤进行操作 http cra
  • 如何对字典中的所有值求和?

    假设我有一个字典 其中的键映射到整数 例如 d key1 1 key2 14 key3 47 是否有一种语法上简约的方法来返回值的总和d i e 62在这种情况下 正如您所期望的 sum d values
  • 将 UUID 与 LINQ to Entities 中的字符串进行比较会引发错误 [重复]

    这个问题在这里已经有答案了 编辑 这不是重复的 建议的 SO 链接希望我打电话ToString 但我正在运行 COUNT 并试图做一个比比较更大的事情ToString 不是正确答案 我正在尝试使用以下方式填充变量IF快捷方式 但当我运行它时
  • SSRS:根据参数值有条件隐藏列 - CSV 导出忽略

    我在 SSRS 2008 中有一个简单的基于表格的报告 有 10 列 每列都有一个相应的参数来确定是否应显示该列 我通过设置在设计模式下右键单击列标题时获得的 列可见性 选项来实现此目的 就我而言 我选择 根据表达式显示或隐藏 将表达式设置
  • Pod Init 没有创建 xcworkspace?

    我启动了一台新 Mac 运行 sudo gem install cocoapods 完成 Pod 初始化 Pod 文件已创建 但没有 xcworkspace 文件 使用 Xcode 9 3 任何帮助表示赞赏 尝试过 卸载 cocoapods
  • 使用 R 中的工具提示绘制县级数据

    我在 www betydb org 上看到了美国县级的交互式分区统计图 我想使用 R 重现类似的地图 我只想要地图和工具提示 不是不同缩放级别的所有图块 或者切换地图的能力 该地图当前创建于ruby 弹出窗口 左下角 查询 MySQL 数据