Why is it so difficult to make things in ggplot2 , i like the way it helps in customisation but the curve is steep nevertheless 

Here is my sample dataframe 

    df <-           gene        HSC       CMP
           ENSG00000158292.6  1.8102636  2.456869
           ENSG00000162496.6  2.6796705  6.203838
           ENSG00000117115.10  3.4509115  5.555739
           ENSG00000159423.14  3.6809277  5.063446
           ENSG00000053372.4  5.7089974  6.851090

If i have plot a boxplot i can simply write this  `boxplot(df[,-1],col=c("red","blue"))`

I get a boxplot but when im trying with ggplot2 im having difficult time 


    ex <- melt(df, id.vars=c("HSC", "CMP"))
    ggplot(data = ex,
           aes(x = CMP, y = HSC)) +
      geom_boxplot()

I get a single boxplot what i want is i get a box plot for HSC and CMP which i got when i use simple base R boxplot .

Any help or suggestion would be highly appreciated  with my ggplot2 code 
    ex = melt(df, id.vars="gene")
    ggplot(ex, aes(x=variable, y=value)) + geom_boxplot()

Your `melt()` command produced nonsensical output.