I have been using QGIS off and on for a few years but only for basic stuff.

I need to design an easy to use form within Qfield for the botanists to use.

We need to survey flora species (>300) of numerous sites with potentially numerous zones (defined as polygons) at each site. There will be zones where there are 300 species. We need to give an indication of the quantity of each species present (to be defined by botanists but something like "few, common, prevalent").

I was thinking to add to each zone/polygon:

Species with range (0=none 1=few 2=common 3=prevalent) with default being 0

What would be the easiest and not too time consuming way to do this?

It looks like making each field a species and using the range widget would work but that is a ton of species to add.

Any other way to add the species name or another alternative?

Need to be able to copy one set of data and paste to another location if the species are the same, or roughly and then can remove/edit the ones that are different so they don't have to go through all the options again.

  • Have you had a chance to look on Vegapp (vegapp.de) which seems be better suited to recording plots in the fields. It's a kind of Turboveg for mobile. Vegapp records the coordinates, you can export it/import to qgis and intersects with the areas/polygons. The solution with QField might work, however it can be an overkill for the task. Commented Mar 9, 2022 at 9:07
  • It sounds to me, that your question needs some clarifying, so somebody can you advice the proper solution.
    – M.D.93
    Commented Mar 12, 2022 at 11:41
  • I don't understand, if your botanists want to digitize polygons of zones at each site on field, or if they will predefined in you QField project and if your sites will be defined by polygons too. If this is the case, then you perhaps will need to make zones as a child features in relation widget - asi it is now possible to digitize geometries alongside attributes child features (see opengis.ch/2021/04/15/…)
    – M.D.93
    Commented Mar 12, 2022 at 11:49
  • Thanks Grzegorz. I had a look but it is very cluttered and I would need to communicate with the developers to add a species list and to add more species (those that get forgotten). Commented Mar 18, 2022 at 5:20
  • Thanks M.D. 93. In some cases, polygons will be defined prior to going on site, in others, they will be made on site (it depends on how updated the data is on boundaries). I need numerous values (species) to belong to one polygon at a time. Commented Mar 18, 2022 at 5:23

2 Answers 2


Though I don't wholy understand your desirable design of polygons (see my comments to your question), it seems to me, that the best solution for recording species for each zone, it could be to make another layer for species records (name and quantity) and join them to zones with a relation widget (see https://docs.qfield.org/how-to/attributes-form/#configure-a-relation-widget for example).

To make workflow easier you can add predefined value map of species names to "species" field of this layer (see https://docs.qgis.org/3.22/en/docs/user_manual/working_with_vector/vector_properties.html#edit-widgets) and your botanist users can choice one value on each species record.

I don't know about possibility to copy features inside QField, but it is possible to edit multiple features at once (see https://docs.qfield.org/how-to/digitize/#multi-editing) or split existing geometries (see https://docs.qfield.org/how-to/digitize/#split-tool - but I don't know, if it preserves attributes from original geometry).

On another hand, if you realy don't think about a relation widget and want to have a form with >300 fields for species names, your users can check for all of recorded species to remember value for a next feature (see https://docs.qfield.org/how-to/digitize/#remember-attribute-values) - so it seems a little easy to preserve values for a next record.

  • I have looked at the relation feature but haven't managed to make it work properly. In the end, I made a spreadsheet with the species listed and locked and entered the values (with a drop down menu) for the presence of each species. Ideally, I want to then import that as a non geometry layer which is in relation to each relevant polygon. Any idea if that can work? Adding one species at a time was way too long Commented Mar 18, 2022 at 5:28

You can use a Value map widget.

  1. Create a csv file of all your species, or add them manually or from a existing layer
  2. Add a species field type text and a quantity field type int
  3. Go to Layer properties - Attributes form. Choose Drag and drop designer, add/remove the fields you want to use for gathering data
  4. Click the text field, my is named Species, choose Value Map under Widget Type, Load data from csv file.

If you have hundreds of species maybe you should use multiple fields, like species from A-G, first field, G-N, second field...

enter image description here

enter image description here

  • 1
    Thanks. Adding one species at a time was too long, especially as the quantity could change if more specimen were observed as each location. If more where observed, the value needed to be changed. So ideally they would be recorded alphabetically to be able to find easily again and each would need to be called up to change the value. In the end a spreadsheet fit the purpose much more quickly. The issue will be to display the data within each area once all of it is collected as it doesn't have a geometry. Commented Mar 18, 2022 at 5:32

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.