次のコードを使用して、データのラベルと色を表示する ggplot2 の凡例を取得しようとしています。
valueVector <- vector()
breakVector <- vector()
foo <- as.data.frame(Seatbelts)
p <- ggplot(foo, aes(x=drivers, y=DriversKilled))
p <- p + geom_line(aes(y = front, colour = "front"), size = .5)
valueVector <- c(valueVector,"red")
breakVector <- c(breakVector,"front")
p <- p + geom_line(aes(y = rear, colour = "rear"), size = .5)
valueVector <- c(valueVector,"blue")
breakVector <- c(breakVector,"rear")
p <- p + geom_line(aes(y = kms/100, colour = "kms"), size = .5)
valueVector <- c(valueVector,"green")
breakVector <- c(breakVector,"kms")
p <- p + geom_line(aes(y = VanKilled, colour = "VanKilled"), size = .5)
valueVector <- c(valueVector,"black")
breakVector <- c(breakVector,"VanKilled")
p <- p + scale_colour_manual("", values = valueVector, breaks = breakVector)
この時点で、valueVector = c("red", "blue", "green", "black"),
breakVector = c("フロント", "リア", "kms", "バンキル"),
p は、フロント = 赤、リア = 緑、kms = 青、VanKilled = 黒のグラフを作成します。
ご覧のとおり、値の順序がシャッフルされており、その後、設定しようとした色ではありません。これには韻や理由が見つかりません。新しいグラフを作成するたびに異なるようです。これを修正する方法を知っている人はいますか?