Putting scale bar labels below scale bar in QGIS?
I don't think there's an option yet which allows you to put the units below the scalebar. An alternative could be to:
Modify your current scalebar and set its
Font colour
to match the background colour:Item Properties > Fonts and colours > Font colour
Copy your scalebar and paste it directly below your original scalebar. Then set its
Font colour
to black and itsLine colour
to transparent:Item Properties > Fonts and colours > Font colour > Line colour
You can then select your scalebars and group them, allowing you to move them easily as if they were one:
I don't think it is possible within qgis print composer.
However you can play with a template file to make it work. You can set the distance between the text labels and the scale bar in:
Item properties > Display > Labels margin.
Unfortunately you can't set it to a negative value (= scale bar above the text) within the print composer.
But you can within a template file. Create an empty print composition and within it a scale bar, with the right style etc. Save this as template ("Composer > Save as template"). This will create a *.qpt file. Open this file with a text editor and search for the term "labelBarSpace" and set it to a negative value e.g. -10. (Depending on you font size you'll have to adjust this value.) Within the qgis print composer add this template (Composer > Add Items from Template) and it'll show the numbers below the scale bar.
As long as you don't touch the Item properties > Display > Labels margin - settings it will stay this way. This worked for me with QGIS 2.18.