2

I created a file consists of a raster (snow load) and a vector with municipal boundaries. I added a vector with the contour lines of the snow load. Labels represent the snow load (kN / m2).

With the function inverted polygons I got this result

http://ge.tt/36VVO082/v/0?c

enter image description here

How can I hide the labels without using the plug-in mask (http://www.oslandia.com/masking-features-in-qgis-24-en.html)?

EDIT 06/01/2015 I am attaching a printout of the Atlas (snow load). http://ge.tt/16FBv382/v/0?c

4
  • 1
    There is a reason why this plugin was developed. Why don't you want to use it?
    – underdark
    Jan 5, 2015 at 18:32
  • Hi. I realize now that I don't have clarified the problem adequately.In recent weeks I have been studying the snow load in my region. I created a raster with the snow load. I would like to create an atlas to be able to export the result for different municipalities.I decided not to use the plug-in mask because it only works within the same session of QGIS. I'm looking for something definitive in order to have the mask working with each new session QGIS without having to restart the plugin "mask".
    – Luca
    Jan 6, 2015 at 13:13
  • 1
    Ok, my answer really does not fit your needs. But your question was really not focused on the problem, the non-persitance of the mask layer, cause quickly browsing the help page for the plugin shows, that it does solve all your problems indeed. Did you catch that phrase? "The mask layer can also be saved with the project, using a memory layer if you use the Memory Layer Saver plugin, or using an OGR vector file format." If you got the problem that this does not work, you should contact he developers.
    – Bernd V.
    Jan 6, 2015 at 14:13
  • 1
    You're right, I'm sorry. Now I read the help of the plugin mask, and I installed the memory layer saver plugin. thanks for your help!
    – Luca
    Jan 6, 2015 at 14:22

1 Answer 1

2

Update: The solution to that particular problem, which got revealed bit by bit, was, that the Memory Layer Saver plug-in had to be installed to make the mask layer, which hides the labels, persistent and gets saved with the project.

For those who do not need to use the Mask plug-in but still want to hide particular labels or give them different appearance, the original answer might be still useful:

Labels are always on top of everything, so there is no chance to hide them by other features.

I think there are two possibilities to get rid of the unwanted labels:

  1. Intersect your vector layer with your area of interest, and delete the parts laying outside -> no feature, no label.

  2. Influence the appearance of your labels directly.

There is no solution from scratch, so for most people its not obvious how to do that.

Intersect the contour lines with the boundary, but instead of deleting parts, make e.g. a Spatial Query (possibly have to activate the plugin first) to select those features inside the boundary, then switch the selection to have all features outside the boundary selected.

Create a number field named e.g. LblFontSize in the field calculator and assign 0 to the selected features, leaving the others without a value.

Then go to the Layer properties -> Labels -> Text -> Size. Behind the input field with your default font size, there is kind of a drawer symbol. Open the drop-down menu by clicking and select in the fly-out under Attribute field your new columns name. The symbol should be coloured yellowish now.

Apply the changes. The features without any entry in your new column should now be labeled with the default font size, while those with a 0 are labeled with zero points hight -> invisible!

2
  • Hi. Thank you for your response. The second method (influence the appearance of the labels) may be used in the case of a QGIS Atlas?
    – Luca
    Jan 6, 2015 at 13:24
  • 1
    Hi, as you wrote you didn't want to use the mask plugin (which i didn't use before), i did not follow the link, so I had no idea that you wanted to make an Atlas. So the answer to your question in this new context is: No idea, probably not (without coding).
    – Bernd V.
    Jan 6, 2015 at 14:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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