Digits in their lanes

05AB1E, 13 bytes

Code:

v'-žh«DyмSð:,

Uses the 05AB1E encoding. Try it online!

Explanation:

v               # For each element in the input..
 '-žh«          #   Push -0123456789
      D         #   Duplicate this string
       yм       #   String subtraction with the current element
                    e.g. "-0123456789" "456" м  →  "-0123789"
         Sð:    #   Replace all remaining elements with spaces
                    e.g. "-0123456789" "-0123789" Sð:  →  "     456   "
            ,   #   Pop and print with a newline

Haskell, 51 bytes

-1 byte thanks to Laikoni.

f l=[[last$' ':[n|n`elem`i]|n<-"-0123456789"]|i<-l]

Try it online!

This challenge is digitist. D:


APL (Dyalog), 32 12 bytes

28 bytes saved thanks to @Adám and @ngn

⊃¨⎕∘.∩'¯',⎕d

Try it online!