- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 {ggplot2}、{osmdata} 和 {sf} 绘制日内瓦湖/莱曼湖。每当我尝试绘制湖泊多面体(其中有 5 个)时,都会出现错误。我在其他地方找不到任何提到这个错误的地方。
library(osmdata)
#> Data (c) OpenStreetMap contributors, ODbL 1.0. http://www.openstreetmap.org/copyright
library(tidyverse)
lake_gva <-
getbb("Geneva") %>%
opq()%>%
add_osm_feature(key = "natural", value = "water") %>%
osmdata_sf()
lake_gva
#> Object of class 'osmdata' with:
#> $bbox : 46.1777724,6.1102411,46.231885,6.1758527
#> $overpass_call : The call submitted to the overpass API
#> $meta : metadata including timestamp and version numbers
#> $osm_points : 'sf' Simple Features Collection with 22394 points
#> $osm_lines : 'sf' Simple Features Collection with 320 linestrings
#> $osm_polygons : 'sf' Simple Features Collection with 120 polygons
#> $osm_multilines : NULL
#> $osm_multipolygons : 'sf' Simple Features Collection with 5 multipolygons
ggplot() +
geom_sf(
data = lake_gva$osm_multipolygons
)
#> Error in do.call(rbind, x): variable names are limited to 10000 bytes
sessionInfo()
#> R version 3.6.0 (2019-04-26)
#> Platform: x86_64-apple-darwin15.6.0 (64-bit)
#> Running under: macOS 10.15.1
#>
#> Matrix products: default
#> BLAS: /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRblas.0.dylib
#> LAPACK: /Library/Frameworks/R.framework/Versions/3.6/Resources/lib/libRlapack.dylib
#>
#> locale:
#> [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
#>
#> attached base packages:
#> [1] stats graphics grDevices utils datasets methods base
#>
#> loaded via a namespace (and not attached):
#> [1] compiler_3.6.0 magrittr_1.5 tools_3.6.0 htmltools_0.4.0
#> [5] yaml_2.2.0 Rcpp_1.0.3 stringi_1.4.3 rmarkdown_1.18
#> [9] highr_0.8 knitr_1.26 stringr_1.4.0 xfun_0.11
#> [13] digest_0.6.23 rlang_0.4.2 evaluate_0.14
最佳答案
osmdata 中存在一个问题,如果修复,将来会阻止此问题:https://github.com/ropensci/osmdata/issues/188本质上,这是因为作为多多边形对象一部分的多边形具有名称,而这些名称对于 ggplot2 来说可能长得令人无法接受。
library(osmdata)
lake_gva <-
getbb("Geneva") %>%
opq()%>%
add_osm_feature(key = "natural", value = "water") %>%
osmdata_sf()
names(lake_gva$osm_multipolygons)
name_polys = lapply(lake_gva$osm_multipolygons$geometry[[1]], names)
sapply(name_polys, nchar)
lake_poly = sf::st_cast(lake_gva$osm_multipolygons$geometry, "POLYGON")
lake_gva$osm_multipolygons$geometry = lake_poly
names(lake_gva$osm_multipolygons$geometry[[2]][[1]]) = NULL]
lake_gva$osm_multipolygons$geometry = unname(lake_gva$osm_multipolygons$geometry)
library(ggplot2)
ggplot() +
geom_sf(
data = lake_gva$osm_multipolygons
)
names(lake_gva$osm_multipolygons$geometry[[1]][[1]][[1]]) = NULL
names(lake_gva$osm_multipolygons$geometry[[1]][[1]][[2]]) = "lake"
关于R:使用 ggplot、geom_sf 和 openstreetmap 绘制多面体时出现异常错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59144491/
在Manim中,对于多面体,有一系列封装好的类可以直接使用。 使用它们,可以方便快速的构建正多面体: Polyhedron:通过顶点和面的参数构建任意多面体 Tetrahedron:四面
稍后编辑:我上传了here我的原始数据的样本。它实际上是DICOM格式的分割图像。该结构的体积约为16 mL,因此我假设内部椭球体的体积应小于该体积。从DICOM图像中提取点,我使用了以下代码: im
我一直在寻找任何 C++ 库,它允许我获得线和多面体/球体之间的 3D 碰撞点(其中线由两个 3D 点和有限数量的 3D 点组成的多面体) 令我惊讶的是,我似乎找不到这样的库(或者我不知道要搜索哪些短
当我们尝试保存值时,为什么 PostGIS 不验证 GEOMETRY 字段的 longitude 和 latitude latitude 大于 90(latitude > 90)? 最佳答案 看看这张
我正在尝试使用 Wicket 插件制作一个多面体对象。我开始使用该插件,但现在我有点飘飘然了。如果我能弄清楚如何使用它,那将对我有很大帮助。 我也是 leaflet 的新手,并不真正理解文档中关于多面
除了这个之外,还有其他方法可以在 Three.js 中创建多边形/多面体吗? var polyhedronPts = []; polyhedronPts.push( new THREE.Vector2
我有这个几何形状文件,所以没有城市 map 。 我将其作为 GeoJson 存储在 GIS 数据库中。现在,我想可视化 geojson 数据。我首先使用 QGIS 创建了 GeoJson 数据并将其导
有没有模拟 3D polyhedra 的 JavaScript 库?使用 Canvas 标签或 SVG?假设我想制作 Platonic solids 的效果图,我将如何最好地实现这一目标? FWIW,
我一直在利用空闲时间编写一个游戏引擎,但为了让碰撞发挥作用,我被困了几个星期。 目前我用 AABB 表示实体的碰撞体,关卡的碰撞体由一个相当简单(但不一定是凸面)的多面体表示。所有的绘图都是基于 sp
我需要找到一种方法来解决在不使用设计工具的情况下为非凸多面体生成纹理贴图的问题。具体来说,我将模拟结果数据映射到 3D 表面上。也就是说,在代码中(最好是 C# 或 VB,因为我的目标是 WPF 3D
我是一名优秀的程序员,十分优秀!