グループ内のレイヤーパネルには多数のレイヤーがありますが、それらを表示したくありません(かなりたくさんあるので、乱雑に見えます)。これらの層は、他のいくつかの層とも結合されています。
これらのレイヤーをユーザーから見えないようにすることは可能ですか(つまり、レイヤーパネルには表示されません。レイヤーの可視性を設定することではありません)または、おそらくグループを非表示にしますか?
私が見つけた最も近いものはこの投稿でしたが、より直接的なアプローチがあることを期待しています:
グループ内のレイヤーパネルには多数のレイヤーがありますが、それらを表示したくありません(かなりたくさんあるので、乱雑に見えます)。これらの層は、他のいくつかの層とも結合されています。
これらのレイヤーをユーザーから見えないようにすることは可能ですか(つまり、レイヤーパネルには表示されません。レイヤーの可視性を設定することではありません)または、おそらくグループを非表示にしますか?
私が見つけた最も近いものはこの投稿でしたが、より直接的なアプローチがあることを期待しています:
回答:
レイヤー/グループを「非表示」にすることは、値の関係に必要なルックアップテーブルを表示しないようにするのに役立ちますが、レイヤーパネルが少し過負荷に見える場合があります。
明確にするために、非表示のレイヤー/グループはレイヤーパネルに表示されませんが、キャンバスに表示したり、他のレイヤーとの結合/関係で使用したりできます。
回答:
プラグインの非表示のレイヤーとグループを使用すると、次のことができます。
レイヤーを非表示にする(コードによる):
if 'InvisibleLayersAndGroups' in qgis.utils.plugins:
ilg = qgis.utils.plugins['InvisibleLayersAndGroups']
ilg.hideLayer( layer ) # layer is a QgsMapLayer
(コードで)グループを非表示にする:
if 'InvisibleLayersAndGroups' in qgis.utils.plugins:
ilg = qgis.utils.plugins['InvisibleLayersAndGroups']
ilg.hideGroup( group ) # group is a QgsLayerTreeGroup
ilg.hideGroup( 'group2' ) # You can also pass a group name
注:注意すべき問題があります。レイヤーを非表示にしてからその親グループを移動すると、非表示のレイヤーが再び表示されます(理由はわかりません!)。したがって、最上位のレイヤー/グループのみを非表示にすることをお勧めします(結局、ルートを移動することはできません)。