zoukankan      html  css  js  c++  java
  • Python与MapNik 等高线渲染&抽稀

    7.1. Mapnik概述

    导出的图像不包含坐标信息吗?在.xml文件

    Mapnik核心是用C++写的,但是通过Python Bindings也可以调用,通过编写Python脚本来实现应用

    >>参考:基于mapnik做切片服务器的几点总结:https://www.cnblogs.com/naaoveGIS/p/10719879.html

    7.1.1. Mapnik制图快速开始

    >>> import mapnik
    >>> m = mapnik.Map(400,200,"+proj=latlong +datum=WGS84")
    >>> m.background = mapnik.Color('steelblue')
    >>> mapnik.render_to_file(m,'xworld.png', 'png')
    >>> from IPython.display import Image
    >>> Image('xworld.png')

    7.1.2. 创建样式

    >>> s = mapnik.Style()
    >>> r=mapnik.Rule()
    >>> polygon_symbolizer = mapnik.PolygonSymbolizer()
    >>> polygon_symbolizer.stroke = mapnik.Color('#0f0f0f')
    >>> r.symbols.append(polygon_symbolizer)
    >>> line_symbolizer = mapnik.LineSymbolizer()
    >>> # line_symbolizer.stroke = mapnik.Color('rgb(50%,50%,50%)')
    >>> r.symbols.append(line_symbolizer)
    >>> s.rules.append(r)
    >>> m.append_style('My Style',s)

    7.1.3. 创建数据源

    范围Extent:

    如何在高程与颜色之间建立联系。。

    高程例如:[-137,1087]

    对应的颜色其实是没有这个范围的颜色的。。

    如果硬是采用某一种配色进行渲染之后,反过来就找不到高程信息了,高程信息会丢失。。

    arcgis矢量转栅格:https://jingyan.baidu.com/article/908080223a9f1bfd91c80f00.html

    转成栅格后,不同的高程按照不同颜色显示,但是并没有看到圈圈。。

    矢量可以设置五米高程值一个颜色。。。从-140到775

     但是栅格。。怎么设置一个值一个颜色

    把像素变小10倍,每个cell大小为0.00027881144,图像范围3601x3601

    导出

    经过这一轮下来,又回到原点,只不过这一次的图像跟原来的DEM图像不一样了,

    类似于每5米一个。。。实现DEM图像抽稀

    前后对比

  • 相关阅读:
    poj3372 Candy Distribution
    poj3270 Cow Sorting
    poj2888 Magic Bracelet
    poj2429 GCD & LCM Inverse
    poj1811 Prime Test
    poj2689 Prime Distance
    【思维】2017多校训练七 HDU6121 Build a tree
    【字符串+BFS】Problem 7. James Bond
    【dfs】codeforces Journey
    【思维+贪心】codeforces Game of the Rows
  • 原文地址:https://www.cnblogs.com/2008nmj/p/14963790.html
Copyright © 2011-2022 走看看