I can scale the bandwidth proportionally to the traffic volumes; however, I cannot show the directionality of the movements. Volumes for directional moves are stored in two different columns of a database. My workaround for this is to import the layer twice and use two different symbologies, one for each direction. Is it to possible to do this without having to import the same layer twice?

Note that I need to show the bandwidth starting from the link so I cannot use the same offset because it create blank space between the opposite directions (it seems to me that the offset start from the middle of the thckness).

Edit: in the uploaded images you can see that the offset depends on the width of the links, so I is not possible to find a single offset value matching for all the links

Not Desired Effect

Desired Effect

  • Could you upload a image of what you are trying to do?
    – Nathan W
    Commented Jun 20, 2013 at 11:38
  • Please also provide a sample of your road layer's attribute table
    – underdark
    Commented Jun 20, 2013 at 12:34
  • Major issue is that if you want the lines to be of consistent thickness in pixels as the user zooms in and out, then the offset must change at every zoom level so they continue to touch without overlapping. Which argues for a client-side geometry rendering, but that requires custom coding with javascript and SVG (or whatever) and may not be performant for large numbers of geometries. Commented Jun 20, 2013 at 18:51
  • Well, my aim is to start the bandwith from the link. If I understand well the offset is localized at the middle of the bandwith and not at the beginning. I need to expand the bandwith starting from the link: up for direction1, down for direction2
    – Ale
    Commented Jun 21, 2013 at 9:02
  • If I understand correctly, you're looking at doing something similar to this
    – dassouki
    Commented Jun 21, 2013 at 11:32

1 Answer 1


In QGIS 2.x, this should be possible using data-defined offset together with data-defined line width.

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.