【发布时间】:2015-06-06 04:41:59
【问题描述】:
我一直在寻找这个问题的答案,但我一直无法弄清楚。
- 我最终要从基于网格的数据(GRIB 文件)创建一个 TopoJSON 文件。
- 我可以很容易地将数据插入到分辨率更高的网格中,这样在缩小时绘图点显得更平滑,但在放大时,不可避免地会看到块状网格点。
- 我还研究了简化,这确实有助于有点,但它不是很平滑。
- 我正在使用 D3 来呈现数据。
- 这是可以在前端完成的事情,还是应该/可以在原始 TopoJSON 数据中完成?
- 我基本上不希望您能够分辨出它是一个网格,即使您将其放大 10,000%。
- 以下是我所追求的示例:
【问题讨论】:
-
任何时候您需要在所有分辨率下连续平滑线条,您的选择基本上归结为大文件或 SVG。我希望解决方案是采用简化的数据并将其转换为 SVG,并在角上进行四舍五入以达到预期的效果。
-
另外,作为一名土木工程师,我首先会问为什么需要这样做 - 它意味着您的数据集中不存在的准确性水平,对于我处理的大多数问题,夸大你的准确性是一个严重的责任问题。根据您的使用情况,如果这样做可能会误导用户并导致错误的结论,那么这样做可能是不好的做法。我个人更喜欢显示(例如)块状的东西来直观地表示“+/- 5 英尺”,而不是可能落在物业角落错误一侧的完美的 0 宽度线。
-
@brichins 完全理解您的担忧,但这是一个气象问题。从历史上看,数据点的平均值(以及插值算法)创建了漂亮的平滑图(ArcGIS、qGIS、GrADS)——这对于这个应用程序来说是最消耗的。天气数据的分辨率一般不是很高(GFS 刚刚升级到 0.25 度)。
-
This question 可能会有所帮助。
标签: javascript d3.js gis geojson topojson