Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用R中的工具提示打印县级数据_R_Google Maps_Plot_Tooltip - Fatal编程技术网

用R中的工具提示打印县级数据

用R中的工具提示打印县级数据,r,google-maps,plot,tooltip,R,Google Maps,Plot,Tooltip,我在www.betydb.org上看到了美国县级的互动choropleth地图。我想用R复制一个类似的贴图。我只想要贴图和工具提示(不是所有不同缩放级别的平铺,也不是切换贴图的能力) 地图当前是在中创建的,弹出窗口(左下角)查询MySQL数据库。编写它的程序员已经离开了,我对Ruby不太熟悉 在这里,我将从一个csv文件开始。数据包括州和县的名称,以及州和县的FIP。我想绘制平均产量 mydata <- read.csv("https://www.betydb.org/miscanthu

我在www.betydb.org上看到了美国县级的互动choropleth地图。我想用R复制一个类似的贴图。我只想要贴图和工具提示(不是所有不同缩放级别的平铺,也不是切换贴图的能力)

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

在这里,我将从一个csv文件开始。数据包括州和县的名称,以及州和县的FIP。我想绘制
平均产量

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"  

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

gvisGeoChart
帮助(在区域和分辨率下)和指示这可能不可能,但文档太多,不清楚R中的其他选项是什么


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

这是一个来自2013年的问题。我不确定当时是否有传单。现在是2017年底,您的任务有可能完成。如果您仍然需要执行类似的任务,我想为您留下以下内容。在这种情况下,数据集中缺少一些县。这些县存在于美国多边形数据中,但它们在
mydata
中缺失。因此,我使用
setdiff()
bind_rows()
将这些县添加到
mydata
。绘制传单地图时,需要指定调色板<代码>平均收益率是一个连续变量。所以您使用
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)
库(光栅)
图书馆(单张)
图书馆(tidyverse)
#获取美国多边形数据
美国%
setView(纬度=39.8283,液化天然气=-98.5795,缩放=4)%>%
添加多边形(数据=美国,笔划=假,平滑因子=0.2,填充不透明度=0.3,
fillColor=~mypal(mydata$Avg_收益率),
弹出=粘贴(“地区:”,美国$NAME_2,
”, “平均收益率:”,mydata$Avg_收益率,“
”)%% addLegend(position=“bottomleft”,pal=mypal,value=mydata$Avg_收益率, title=“平均收益率”, 不透明度=1)


我一直在绘制类似的美国地图。谷歌图表有一个选项可用于R:
resolution=“metros”
这张地图显示了整个北美。你如何改变它只显示美国包括阿拉斯加和夏威夷?
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)