- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Facebook 构建了它所谓的 relative wealth index适用于全局 > 1900 万个微型区域(2.4 公里网格单元)。他们已经 shared the data ( zip ) 在一个 csv 文件中,该文件列出了四元键 ID、纬度/经度(我认为是磁贴单元格的左上角)和磁贴的索引值。它看起来像这样:
在他们的 technical paper ,他们注意到这些 2.4 公里的网格单元对应于 Bing 瓦片级别 14。
我没有与 Bing tiles 一起工作过前。 a) 创建或访问覆盖多边形(例如,肯尼亚)的 2.4 平铺网格和 b) 将财富指数值从 csv 连接到此网格 shapefile 的最佳方法是什么?我想要一个具有此财富指数属性的网格多边形,我可以在以后的分析中使用它,该分析通过网格单元从栅格中提取信息。
到目前为止我所知道/认为我所知道的:
sf::st_make_grid()
会创建一个网格,但我认为它不会是 Bing 网格。 rosm
这样的包将绘制 bing 瓷砖,但这不是我正在寻找的。 最佳答案
这是墨西哥的一个例子,但这是调整 csv 读取的问题。似乎网格对齐得很好(见最后一个图)但是,slippymath 是错误的数据是指单元格中心而不是左上角。结果肯定会更快,但似乎足够快(墨西哥是较大的国家之一)。在第一个位中,我探索在第二个实际读取数据中创建一个网格(这种情况下缩放 4)。请注意,网格的尺寸需要固定,因为一个是规则的,而另一个是不规则的。这会导致 st_as_sf
出现问题.
require(stars)
#> Loading required package: stars
#> Loading required package: abind
#> Loading required package: sf
#> Linking to GEOS 3.8.0, GDAL 3.0.4, PROJ 6.3.1
require(ggplot2)
#> Loading required package: ggplot2
require(tidyverse)
#> Loading required package: tidyverse
z<-4
d<-data.frame(quadkey=apply(as.matrix(expand.grid(0:3,0:3,0:3,0:3)),1, paste0, collapse=''), val=runif(n=(2^z)^2))
lons<-slippymath::tilenum_to_lonlat(0:(2^z),1,z)$lon
lats<-slippymath::tilenum_to_lonlat(1,0:(2^z),z)$lat
l<-lapply(strsplit(d$quadkey,''), as.numeric)
d$x<-unlist(lapply(lapply(lapply(l,'%%',2), '*',2^((z-1):0) ), sum))
d$y<-unlist(lapply(lapply(lapply(l,'%/%',2), '*',2^((z-1):0) ), sum))
m<-matrix(d %>% arrange(x,y) %>% pull(val), ncol=2^z)
grd<-st_as_stars(list(m=m),dimensions=st_dimensions(x=lons, y=lats))
st_crs(grd)=4326
worldMap = rnaturalearth::ne_countries(scale = "medium", returnclass = "sf")
ggplot()+geom_stars(data=grd)+geom_sf(data=worldMap)
# now with the data
f<-tempfile(fileext = '.zip')
download.file('https://data.humdata.org/dataset/76f2a2ea-ba50-40f5-b79c-db95d668b843/resource/bff723a4-6b55-4c51-8790-6176a774e13c/download/relative-wealth-index-april-2021.zip',f)
#unzip(f, list=T)
d<-read.csv(unz(f,'relative-wealth-index-april-2021/MEX_relative_wealth_index.csv'))
z<-14
l<-lapply(strsplit(formatC(d$quadkey, width=z, flag='0', digits = z),''), as.numeric)
d$x<-unlist(lapply(lapply(lapply(l,'%%',2), '*',2^((z-1):0) ), sum))
d$y<-unlist(lapply(lapply(lapply(l,'%/%',2), '*',2^((z-1):0) ), sum))
head(d)
#> quadkey latitude longitude rwi error x y
#> 1 2.331030e+12 18.63583 -97.98706 -0.395 0.495 3732 7328
#> 2 2.313220e+12 24.35711 -100.42603 -0.045 0.396 3621 7048
#> 3 2.330113e+12 19.46659 -101.37085 -0.239 0.391 3578 7288
#> 4 2.331032e+12 17.08829 -97.83325 -0.893 0.513 3739 7402
#> 5 2.331030e+12 18.17717 -98.03101 0.053 0.493 3730 7350
#> 6 2.331000e+12 21.21770 -100.29419 -0.065 0.450 3627 7203
lons<-slippymath::tilenum_to_lonlat(min(d$x):(max(d$x)+1),1,z)$lon
lats<-slippymath::tilenum_to_lonlat(1,min(d$y):(max(d$y)+1),z)$lat
require(raster)
#> Loading required package: raster
#> Loading required package: sp
#>
#> Attaching package: 'raster'
#> The following object is masked from 'package:dplyr':
#>
#> select
#> The following object is masked from 'package:tidyr':
#>
#> extract
m<-(as.matrix(rasterFromXYZ(d[,c('x','y','rwi')])))
m<-t(m[nrow(m):1,])
grd<-st_as_stars(list(rwi=m),dimensions=st_dimensions(x=lons, y=lats))
st_crs(grd)=4326
# manipulate the dimensions to fix them
dm<-st_dimensions(grd)
dm$x$delta<-NA
dm$x$offset<-NA
ll<-list(start=head(lons,-1), end=tail(lons,-1))
class(ll)<-'intervals'
dm$x$values<-ll
st_dimensions(grd)<-dm
worldMap = rnaturalearth::ne_countries(scale = "medium", returnclass = "sf")
ggplot()+geom_stars(data=grd)+geom_sf(data=worldMap, fill=NA)+coord_sf(xlim=range(lons), ylim=range(lats))
s<-st_as_sf(d,coords = c('longitude','latitude'), crs=4326)
ggplot()+geom_stars(data=grd)+geom_sf(data=worldMap, fill=NA)+geom_sf(data=s, aes(fill=rwi), shape=21)+coord_sf(xlim=-100+0:1, ylim=20+0:1)
st_as_sf(grd)
#> Simple feature collection with 77083 features and 1 field
#> Geometry type: POLYGON
#> Dimension: XY
#> Bounding box: xmin: -117.1362 ymin: 14.51978 xmax: -86.7041 ymax: 32.73184
#> Geodetic CRS: WGS 84
#> First 10 features:
#> rwi geometry
#> 1 0.458 POLYGON ((-114.7632 32.7318...
#> 2 0.642 POLYGON ((-114.7412 32.7318...
#> 3 0.048 POLYGON ((-114.7632 32.7133...
#> 4 0.437 POLYGON ((-114.7412 32.7133...
#> 5 -0.158 POLYGON ((-114.8071 32.6948...
#> 6 -0.031 POLYGON ((-114.7852 32.6948...
#> 7 0.425 POLYGON ((-114.7632 32.6948...
#> 8 -0.070 POLYGON ((-115.5762 32.6763...
#> 9 -0.250 POLYGON ((-115.5542 32.6763...
#> 10 0.371 POLYGON ((-115.5322 32.6763...
创建于 2021-09-30 由
reprex package (v2.0.1)
关于r - 将有关四键的信息加入到平铺 shapefile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68658693/
我正在尝试制作一种能够解决拼贴问题中的大图 block 集的算法。现在它能够根据宽度和高度找到正确的 Tiles 来放置,但是在使其正确递归方面存在一些问题。 如您所见,这个想法是,在放置的每个图 b
有什么方法可以轻松地平铺 mdi parent 的所有表单 child 吗?我正在寻找 windows 提供的大部分功能,瓷砖级联。有谁知道一个简单的方法? 最佳答案 试试这些... // Tile
我有一个大 jpg,其分辨率为 x * 256/x * 256。我想将此图像切割为 256x256 的图块,命名约定为 {zoom}-{x}-{y}.jpg。过去我使用 ZoomifyExpress
如何使用ImageMagick平铺图像?我认为我不能使用montage,因为我希望将列偏移原始图像高度的50%。 展示我正在尝试做的事可能更容易: 从...开始: 结尾为: 谢谢! 最佳答案 感谢Fr
是否可以在 XNA 中平铺图像以使其填满整个矩形?我试过用谷歌搜索这个主题,但我找不到任何似乎有用的东西(虽然我可能遗漏了一些明显的东西)。我找到了 this MSDN page ,但我似乎无法让它工
我无法找到答案,为什么我为图 block map 制作的图 block 表在使用 libGDX 在屏幕上移动时会创建垂直白线和不稳定的水平线。 这是显示白色垂直线的视频:https://www.you
有谁知道 GitHub Java version of Tiled 中如何临时支持视差图层吗?工作正常吗? 它可以编译,并且执行得很好。但是,如果我将图层设置为viewplane distance 0
在我制作的平台游戏中,我需要加载图 block 才能创建关卡,但在下面的代码中我似乎遇到了问题。它说我在这部分有一个错误: String[] skips = skip.split(" "); 但对我来
使用 pdfimages 提取图像和 mupdf/mutool到目前为止工作正常。 使用 FreePDF 生成的 PDF 中的图像总是被切片,因此一个图像会生成多个图像文件。 有什么技巧可以避免这种情
我正在尝试使用 Tiled 编写基于 rts-like-tile 的游戏和 slick2d。 我不知道如何处理多图 block 对象,例如建筑物,如何创建、保存等等。移动它们。 最佳答案 一种解决方案
我想用一张图片来编写一个平铺 map 。它应该是一个 5x5 的小图片区域。我写了一些带有 2 个嵌套循环的 Javascript 代码。使用此解决方案,仅打印 1 张图片。当我在第二个循环中删除 b
我正在尝试使用 Slick2D 和 Tiled Map Editor 制作一个基本的 2D 游戏。我已经弄清楚如何使用 TileProperties 进行基本的碰撞检测,但我不确定对象如何与 map
我正在尝试创建一个无限滚动的分页 UIScrollView 我一直在关注 Advanced UIScrollView Techniques来自 WWDC 2010 的视频,但是我不确定如何为分页 UI
好吧,假设我有一个像本网站一样的冷却平铺背景。 http://www.leeslights.com/colors-shapes-sizes-and-prices.html 我将如何使图像平铺到浏览器,
这个问题在这里已经有了答案: CSS-only masonry layout (5 个答案) 关闭 2 年前。
这个问题在这里已经有了答案: CSS-only masonry layout (5 个答案) 关闭 2 年前。
这个问题在这里已经有了答案: CSS-only masonry layout (5 个答案) 关闭 2 年前。
这个问题在这里已经有了答案: CSS-only masonry layout (5 个答案) 关闭 2 年前。
这个问题在这里已经有了答案: CSS-only masonry layout (5 个答案) 关闭 2 年前。
这个问题在这里已经有了答案: CSS-only masonry layout (5 个答案) 关闭 2 年前。
我是一名优秀的程序员,十分优秀!