gpt4 book ai didi

python - 在 qgs Composer 图例中仅显示过滤层 - PyQgis

转载 作者:行者123 更新时间:2023-12-01 08:53:18 25 4
gpt4 key购买 nike

我正在开发自定义 Qgis 插件。我想以图像的形式导出 map Canvas 以及图例。图例的代码是:

legend = QgsComposerLegend(c)
legend.model().setLayerSet(mapRenderer.layerSet())
c.addItem(legend)

问题是它添加了 map 图例中的所有图层,而我只想在 map 图例中包含在 map 范围内可见的图层。我也尝试过:

legend.setLegendFilterByMapEnabled(True)

但这似乎不起作用。关于如何解决这个问题有什么想法吗?

最佳答案

我通过拆分 map 图和图例图解决了这个问题。我是说 ;创建并保存 map 图后,我为图例图创建了另一个mapcanvas渲染器,这次我使用removeMapLayer方法删除了不需要的图层。然后也保存图例图。

QgsMapLayerRegistry.instance().removeMapLayer(the_unwanted_layer)

我希望这有帮助

关于python - 在 qgs Composer 图例中仅显示过滤层 - PyQgis,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52963452/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com