I am facing the problem of not being able to graphically draw and edit tables (header of a map with information on the map content, editor, firm name, ...) within map composer. Is there an efficient way to accomplish graphically pleasing and easily modifiable forms (tables) in QGIS?

I used to draw lines and polygons which I grouped afterwards. Lines would never be perfectly vertical/horizontal and the items field was totally crowded (please include the otion to structure items in items pan (group folder oder indentations?!even when grouped, individual items such as the lines are still visible in items pane...).

I know there is the option to use html tables but they are not easy to edit for everybody. Am I missing something?

  • Could you provide an example of what you are looking for? – underdark Sep 3 '16 at 11:25
  • I am looking to insert a table-like item (sort of a form) where i can write in text such as the author of a map, the title or scale. I also want to be able to insert images (such as university logo) and shapes. so basically a table / form, something that in germany we call "Plankopf". The goal is to be able to reproduce standardized maps. – hilpers Sep 3 '16 at 11:52
  • Any map item (image, label, ...) can have a border - it just needs to be enabled. Then you arrange the items and that should be it. – underdark Sep 3 '16 at 11:54
  • true, that´s a bit cumbersome but managable. I still have issues to keep the items pane organized. Will it possible to group items in folders and subgroups? – hilpers Sep 3 '16 at 11:56

Any map item (image, label, ...) can have a border - it just needs to be enabled. Then you arrange the items and that should be it. You can also insert HTML tables in label items:

enter image description here

Afaik, there is no functionality to group items in the print composer item panel. If it gets too cumbersome to reproduce the standardized "Plankopf", you might consider adding it as a picture and then just throwing labels/images on top

  • 1
    This seems to be a practical workaround. It is even possible to add some scripting in JavaScript for updating the fields. I didn't try yet but it shouldn't be to complicated with some JavaScript skills to read a CSV and update the fields accordingly. – GuiOm Clair Mar 8 '17 at 9:06

If I understand correctly, you can draw these using basic shapes e.g. rectangles.

You can use CtrlG to group multiple selected rectangles so you can drag around the whole group. To do this, it's easiest if you hide the map layer in the items panel, then drag a selection around all the boxes. Otherwise you'll end up selecting the map too..

enter image description here

A few tips:-

  • Work from the bottom up - so draw the overall outline first, then boxes for rows, the boxes for cells within rows. This needs a bit of planning.

  • QGIS snaps to edges if you drag corners or edges of rectangles, useful for keeping things tidy :)

  • A mouse wheel (zoom) and middle-button drag (for pan) will help get precise results.

  • Use Guides. These are similar to those in GIMP, InkScape and so on, where you drag a line from either ruler. Note that map composer works differently to other graphics packages, you draw vertical guides from the horizontal ruler, and vice versa. (Gets me every time.)

This is similar to Underdark's suggestion, you'd still need to draw text items and drop images on top, using transparent/no background. If you're going for that approach I'd suggest InkScape/Illustrator and SVG. Going that route might make it easier to reuse these, too.

  • thanks a lot for this very detailed and qualified answer. The approach you delineated is certainly qualified to get the job done but users (and that will not be just me) will likely be distracted by all the different things they have to take care of here. I think, this handling is a bit too static. For instance if you have to resize one polygon due to the lenth of text you need to insert you need to readjust the entire design of the box array. Maybe its simpler to create a table using different software, fill it with text and images and import it as a picture. – hilpers Sep 4 '16 at 9:29

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.