The plotting code below gives Error: Discrete value supplied to continuous scale
What's wrong with this code? It works fine until I try to change the scale so the error is there... I tried to figure out solutions from similar problem but couldn't.
meltDF <- data.frame( MW = c( 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4, 3.9, 6.4, 7.4, 8.1, 9, 9.4 ), variable = factor( c( "10", "10", "10", "10", "10", "10", "33.95", "33.95", "33.95", "33.95", "33.95", "33.95", "58.66", "58.66", "58.66", "58.66", "58.66", "58.66", "84.42", "84.42", "84.42", "84.42", "84.42", "84.42", "110.21", "110.21", "110.21", "110.21", "110.21", "110.21", "134.16", "134.16", "134.16", "134.16", "134.16", "134.16", "164.69", "164.69", "164.69", "164.69", "164.69", "164.69", "199.1", "199.1", "199.1", "199.1", "199.1", "199.1", "234.35", "234.35", "234.35", "234.35", "234.35", "234.35", "257.19", "257.19", "257.19", "257.19", "257.19", "257.19", "361.84", "361.84", "361.84", "361.84", "361.84", "361.84", "432.74", "432.74", "432.74", "432.74", "432.74", "432.74", "506.34", "506.34", "506.34", "506.34", "506.34", "506.34", "581.46", "581.46", "581.46", "581.46", "581.46", "581.46", "651.71", "651.71", "651.71", "651.71", "651.71", "651.71", "732.59", "732.59", "732.59", "732.59", "732.59", "732.59", "817.56", "817.56", "817.56", "817.56", "817.56", "817.56", "896.24", "896.24", "896.24", "896.24", "896.24", "896.24", "971.77", "971.77", "971.77", "971.77", "971.77", "971.77", "1038.91", "1038.91", "1038.91", "1038.91", "1038.91", "1038.91" ), levels = c( "10", "33.95", "58.66", "84.42", "110.21", "134.16", "164.69", "199.1", "234.35", "257.19", "361.84", "432.74", "506.34", "581.46", "651.71", "732.59", "817.56", "896.24", "971.77", "1038.91" ) ), value = c( 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0 ) ) The plotting code:
## Plotting ggplot(meltDF[meltDF$value == 1,]) + geom_point(aes(x = MW, y = variable)) + scale_x_continuous(limits=c(0, 1200), breaks=c(0, 400, 800, 1200)) + scale_y_continuous(limits=c(0, 1200), breaks=c(0, 400, 800, 1200)) Here's how the plot looked before adding scale:

scale_y_continuous.