当前位置: 首页 > 软件库 > 程序开发 > 地图相关 >

prettymaps

Python 地图绘制工具库
授权协议 MIT
开发语言 Python
所属分类 程序开发、 地图相关
软件类型 开源软件
地区 不详
投 递 者 充普松
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

prettymaps 是 Python 编写的将 OpenStreetMap 数据绘制漂亮的地图的工具,项目基于 osmnx、matplotlib 和 shape 库。

示例

# Init matplotlib figure
fig, ax = plt.subplots(figsize = (12, 12), constrained_layout = True)

backup = plot(
    # Address:
    'Praça Ferreira do Amaral, Macau',
    # Plot geometries in a circle of radius:
    radius = 1100,
    # Matplotlib axis
    ax = ax,
    # Which OpenStreetMap layers to plot and their parameters:
    layers = {
            # Perimeter (in this case, a circle)
            'perimeter': {},
            # Streets and their widths
            'streets': {
                'width': {
                    'motorway': 5,
                    'trunk': 5,
                    'primary': 4.5,
                    'secondary': 4,
                    'tertiary': 3.5,
                    'residential': 3,
                    'service': 2,
                    'unclassified': 2,
                    'pedestrian': 2,
                    'footway': 1,
                }
            },
            # Other layers:
            #   Specify a name (for example, 'building') and which OpenStreetMap tags to fetch
            'building': {'tags': {'building': True, 'landuse': 'construction'}, 'union': False},
            'water': {'tags': {'natural': ['water', 'bay']}},
            'green': {'tags': {'landuse': 'grass', 'natural': ['island', 'wood'], 'leisure': 'park'}},
            'forest': {'tags': {'landuse': 'forest'}},
            'parking': {'tags': {'amenity': 'parking', 'highway': 'pedestrian', 'man_made': 'pier'}}
        },
        # drawing_kwargs:
        #   Reference a name previously defined in the 'layers' argument and specify matplotlib parameters to draw it
        drawing_kwargs = {
            'background': {'fc': '#F2F4CB', 'ec': '#dadbc1', 'hatch': 'ooo...', 'zorder': -1},
            'perimeter': {'fc': '#F2F4CB', 'ec': '#dadbc1', 'lw': 0, 'hatch': 'ooo...',  'zorder': 0},
            'green': {'fc': '#D0F1BF', 'ec': '#2F3737', 'lw': 1, 'zorder': 1},
            'forest': {'fc': '#64B96A', 'ec': '#2F3737', 'lw': 1, 'zorder': 1},
            'water': {'fc': '#a1e3ff', 'ec': '#2F3737', 'hatch': 'ooo...', 'hatch_c': '#85c9e6', 'lw': 1, 'zorder': 2},
            'parking': {'fc': '#F2F4CB', 'ec': '#2F3737', 'lw': 1, 'zorder': 3},
            'streets': {'fc': '#2F3737', 'ec': '#475657', 'alpha': 1, 'lw': 0, 'zorder': 3},
            'building': {'palette': ['#FFC857', '#E9724C', '#C5283D'], 'ec': '#2F3737', 'lw': .5, 'zorder': 4},
        }
)

 相关资料
  • 绘图工具栏 绘图工具栏位于主窗口左侧。绘图工具包括选择、框选(和框选墙)、画墙(和画矩形墙)、给墙加点和擦除功能。 名称 说明 选择 选择场景中任意对象(如模型、墙体),并对其进行编辑(快捷键为1)。 框选(和框选墙) 可框选多个模型。长按可选择框选墙,用于选择多个墙体。 画墙(和画矩形墙) 绘制墙体。长按可选择画矩形墙。 给墙加点 给整面的墙体添加锚点,给墙体分段。 擦除 删除墙体。

  • 问题内容: 我试过了 但它产生错误: 任何的想法? 问题答案: 好吧,错误消息很清楚:不是实体。如果要映射基本元素的集合,请使用批注(来自Hibernate)或批注(来自JPA 2.0)。 因此,假设您使用的是Hibernate Annotations 3.4,请尝试以下操作: 或者,使用泛型时: 如果您使用的是Hibernate Annotations 3.5+,则更喜欢JPA 2.0注释: 或

  • 用钢笔工具绘制直线段 使用 “钢笔 ”工具可以绘制的最简单路径是直线,方法是通过单击 “钢笔 ”工具创建两个锚点。继续单击可创建由角点连接的直线段组成的路径。 单击钢笔工具将创建直线段。 1选择钢笔工具。 2将钢笔工具定位到所需的直线段起点并单击,以定义第一个锚点(不要拖动)。注:单击第二个锚点之前,您绘制的第一个线段将不可见。(在 Photoshop 中选择 “橡皮带 ”选项以预览路径段。)此外

  • 最新代码-http://jsfidle.net/ysqdh/88/- 这个版本使用gDouglasPeuker从绘制的版本中创建一个rudamentary多边形形状-http://jsfiddle.net/ysqdh/94/ ^这将禁用用于绘制的映射,并在创建形状后再次启用该映射。 我正在开发一个谷歌地图应用程序。而不是多边形点击练习。我想要能够画一个形状-然后转换成一个多边形。 下面是我的最新应

  • 操作步骤: ①以编辑状态进入地图,点击左侧图例面板中要使用的图层,所选图层的边缘显示为蓝色,表示新添加的记录将绘制在此图层上。例如:选择标注图层。 ②点击地图右上方工具栏上"添加标注"按钮。 ③在地图上,将鼠标移到想要添加标注的位置,点击一下,放置标注即可。 ④在弹出的信息窗中,填写标题及其他说明信息。 ⑤点击信息窗口右下角的"完成"图标以完成添加。 提示 ●区域和线路需双击鼠标左键结束绘制。 操

  • 问题内容: 该脚本绘制控件,英雄,表面和地图: 有一个英雄,当玩家使用控件移动他时必须重新绘制,所有其他可绘制对象也必须重新绘制。问题在于绘制地图是一个漫长的过程,因此我创建的地图越大,英雄移动的速度就越慢,因为必须绘制地图的每个图块。有没有一种方法可以将所有图块以其他方法放置到一个位图,然后在canvas方法中绘制该位图? 问题答案: 最好的选择是只绘制地图在屏幕上可见的部分。这样,无论整个地图

  • 使用铅笔工具绘图 铅笔工具在 Adobe Illustrator 和 InDesign 中的工作方式大致相同。它可用于绘制开放路径和闭合路径,就像用铅笔在纸上绘图一样。这对于快速素描或创建手绘外观最有用。绘制路径后,如有需要您可以立刻更改。 当您使用 “铅笔 ”工具绘制时锚点已设置;您不决定它们所在位置。但是,当路径完成后您可以调整它们。设置的锚点数量由路径的长度和复杂程度以及 “铅笔工具首选项

  • 主要内容:本节引言:,1.相关方法详解,2.动手试试:,本节小结:本节引言: 上两小节我们学习了Drawable以及Bitmap,都是加载好图片的,而本节我们要学习的绘图相关的 一些API,他们分别是Canvas(画布),Paint(画笔),Path(路径)!本节非常重要,同时也是我们 自定义View的基础哦~好的,话不多说开始本节内容~ 官方API文档:Canvas;Paint;Path; 1.相关方法详解 1)Paint(画笔): 就是画笔,用于设置绘制风格