I have lots of layers with lots of rule-based styling in my QGIS project, although I would like to display in legend for my print composer only those features that are actually present on a current map extent.

In ArcGIS I would use an option "Only show classes that are visible in the current map extent", so I wonder if there's something similar in QGIS.

Of course there is a manual solution but it is not an option in many cases.


Yes, there is an option in QGIS 3. ( I use v3.02 )

But, I guess it has some refreshing issues. When I check the option, no refreshing immediately although I've checked 'Auto update' option.

In my data 'Building' layer has seven different types of building and only those in the map extent are displayed

enter image description here

  • Thanks, I tried this option but it seems like it doesn't work (tried in QGIS 3.0.3) or requires more actions than just checking the box. – Basile May 22 '18 at 9:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.