I am working on a data set which is looking at total number of fish landings in accordance with vessel length within the North Sea. After plotting the data I want to be able to categorize total number of fish landings in accordance to the length of the vessel.

I have attempted to use the Expression String Builder within the Rule-based symbol in properties and symbology, in which there are four categories available <=10,>10-<=12,>12-<15, and >=15. I want to be able to plot the length LENGTH_GP of the vessel to total number of fish landings, with each category displaying a different colour.

Does anyone have any suggestions to this issue?

  • What do you mean by "length of the vessel to total number of fish landings?" Is that a ratio? Is it length/fish_landings or fish_landings/length? Where is the "fish landings" value stored - in the same layer as vessel length, or a different layer? – csk Oct 30 '18 at 16:27
  • there are four vessel lengths (described above) which over 2016 have collected fish numbers. these fish numbers range from 0 fish caught per ICES Rectangle to 99903 fish per ICES rectangle. I am trying to find a way to identify within my plotted graph how many fish were caught using a vessel '> =15 m' how many were caught using a vessel '< =10m', how many from inbetween >12- <15m vessel and finally '>10 - <12m' which once programmed to follow rule based symbols will display 4 colours within my graph identifying how many fish were caught per size of boat. – Bodhi Oct 30 '18 at 16:37
  • Sorry for my prior poor explanation. does this identify my issue in a clearer description – Bodhi Oct 30 '18 at 16:38
  • So you have a separate record for each fish caught? – csk Oct 30 '18 at 16:43
  • I'm trying to get a clearer idea of how your data are structured, because this determines how to set up the expressions. Could you add a screenshot of your table of contents (layers panel)? – csk Oct 30 '18 at 16:45

If I understand your question correctly you are trying to plot points with multi-attribute symbology: boat length and fish landings. Let me know if you meant something different and we can edit your question to clarify.

In expression builder you can specify multiple conditions using AND. Your expressions for multi-field symbology might look something like this:


Each line in that block is a separate rule. Note: each combination of boat length and number of fish landings will need to be explicitly defined, but you can also use upper and lower bounds for fish landings like you did for boat length.

EDIT: Using csk's recommendation you can used nested rules like pictured below. Also note to remove symbology from the top layer so it does not conflict with the lower layers.

enter image description here

  • 1
    You can also do nested rules, eg make one rule "LENGTH_GP"<=10. Nest multiple rules underneath for different "FISH_LANDINGS" values. – csk Oct 30 '18 at 16:32
  • @csk Cool, I didn't know that. I'll edit my answer. – Hayden Elza Oct 30 '18 at 16:33
  • With nested rules you want to make the top rule have no symbology, otherwise the symbols render multiple times and overlap each other. – csk Oct 30 '18 at 16:35
  • I think using the nested rules is where I need to go. The data base is so great that I will need to find ranges within 'fish landings' and apply them, but not sure how to do that – Bodhi Oct 30 '18 at 16:40

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.