我有一个PostGIS数据库,其中包含道路和水体。我在QGIS中根据非常有用的帖子(Anita Grasser的Guide to Advanced Labeling for OSM Roads和“Google Maps”-Style Road Maps in QGIS)设置的POI,公园等。
我是python程序员,我想自动创建这些样式,而不是手工创建,这可能吗?谁能给我示范?
非常感谢您!
答案 0 :(得分:0)
在QGIS中,您可以在命令行选择层中输入标签并输入
layer = iface.activeLayer()
layer.labelling()
您将获得QgsAbstractVectorLayerLabeling的实例 https://qgis.org/pyqgis/master/core/Abstract/QgsAbstractVectorLayerLabeling.html?highlight=qgsabstractvectorlayerlabeling
要转到符号,您需要输入
layer = iface.activeLayer()
layer.renderer()
您将获得类QgsFeatureRenderer https://qgis.org/pyqgis/master/core/Feature/QgsFeatureRenderer.html?highlight=qgsfeaturerenderer#qgis.core.QgsFeatureRenderer.symbols
您还可以通过以下方式设置渲染器
renderer = QgsFeatureRenderer()
layer.setRenderer(renderer)