Is it possible to set a label weight to the legend bounding box?

715
4
02-03-2020 09:46 AM
Vinzafy
Occasional Contributor

Sometimes when labels are created, they are cut off by the legend bounding box so that they're not fully visible or just look out of place (example screenshot is attached). I currently use Maplex and set label weight rankings to feature classes so that labeling conflicts like that don't occur between shapefiles. However, is it possible to set a label weight ranking to features like the legend bounding box or even another data frame for an inset map? 

Currently, the two workarounds I have are:

  • Simply converting labels to annotations to manually move them but this is made pointless if the data frame needs to be panned over or data needs to be updated.
  • Creating a new polygon shapfile, drawing a polygon around the bounding box and/or inset map (i.e. any features that labels intersect with that I can't set a weight to), setting the symbol and outline to no colour (so it's invisible), then setting a label weight of 1000 to that (now invisible) polygon. 

The second methods works well as it essentially sets a label weight to the features I want one on and allows labels to still be dynamic and update as necessary (compared to creating annotations). However, I'm wondering if it's possible to set a label weight to these features (legend bounding box and inset data frame) without the extra step of creating a new shapefile. 

0 Kudos
4 Replies
RobertBorchert
Frequent Contributor III

the legend should not be interfering with the labels. They are in two different frames.  If you have your legend inside the same frame as the layout then you should move it outside of the frame that the layout is in.

0 Kudos
Vinzafy
Occasional Contributor

Thanks for your response! 

That is the problem in a sense ─ that the legend is not interfering with the labels. It currently has no effect on the labels which is fine unless there's a label that is cut off by where the legend is (like in the screenshot). Basically I'm trying to find a way to have the legend affect labels the same as if it were a polygon with a label weight attached to it so labels don't get placed anywhere they would get cut off by the legend. 

Another example can be found here where the label is cut off because it's not influenced by the legend. If I create a polygon that's the same dimensions as the legend, set it to have no colour (i.e. invisible) then add a label weight to that polygon, the label will move because it knows not to interfere with that area. I'm just wondering if there's a way to achieve that same result without having to create a polygon for the legend. Apologies if none of what I'm saying or explaining is clear enough/makes sense! 

0 Kudos
RobertBorchert
Frequent Contributor III

That is correct. the polygon you create is a feature that can have weight.  The legend in your snapshot can be considered more of a mask that covers the layout. You should move your legend OUTSIDE of the layout frame and put it by itself. It is not blocking the label it is covering it. Think of it as putting a sheet of paper on top of another sheet that has words on it.  It is not blocking the words it is covering them up. the legend has not weight, It is technically not a polygon.

0 Kudos
Vinzafy
Occasional Contributor

Ahh I think I understand where the confusion is coming from! For this map, the legend has to be within the data frame; it can't be outside of it. I understand that the legend is essentially a mask and not a feature that can have weight or influence on any of the features in the data frame and that's it's just covering up those labels in the examples I provided. 

Essentially however, I'm wondering if there is a way to give the legend a weight and have it act as though it were a polygon shapefile as this legend needs to be within the data frame. Basically I'm trying to eliminate the step of creating a polygon around the legend and giving that a weight by just giving the legend itself a weight if that is something possible to do. 

0 Kudos