title: ggplot with X axis having multiple levels
body: <p>Think of a data frame providing three columns:</p>
  
  <ul>
  <li>year</li>
  <li>month</li>
  <li>value</li>
  </ul>
  
  <p>I want to plot value by year/month in its natural order. But so far I didn't find a good way to accomplish this in ggplot. Below you'll find a simplified example showing my desired result but by applying a workaround - concatenating year and month or a and b in the example. But this solution brings already several disadvantages with it.</p>
  
  <p>Is there a generic way to accomplish this in ggplot?</p>
  
  <pre><code>&gt; library(ggplot2)
  
  &gt; df &lt;- data.frame(a = c(1,1,1,2,2,2), b = c(1,2,3,1,2,3), v = 1:6)
  
  &gt; df
    a b v
  1 1 1 1
  2 1 2 2
  3 1 3 3
  4 2 1 4
  5 2 2 5
  6 2 3 6
  
  &gt; dfX &lt;- data.frame(ab = paste(df$a,df$b), v = df$v)
  
  &gt; dfX
     ab v
  1 1 1 1
  2 1 2 2
  3 1 3 3
  4 2 1 4
  5 2 2 5
  6 2 3 6
  
  &gt; ggplot(dfX, aes(x = ab, y = v)) + geom_point()
  </code></pre>
  
  <p><img src="https://i.stack.imgur.com/X8Tis.png" alt="enter image description here"></p>
  
  <p>How would I get the above plot using df directly?</p>