3

凡例に2つのレベルが含まれている必要があるプロットがあります。Ggplotは、データフレームに表示されない4つを含む、6つのレベルの凡例を表示します。問題の簡単な再現を以下に示します。

x <- seq(from=1, to=10, by=0.5)
y.2 <- x^2
y.3 <- x^3
exponent.2 <- 2
exponent.3 <- 3
data2 <- data.frame(x=x, y=y.2, exponent = exponent.2)
data3 <- data.frame(x=x, y=y.3, exponent = exponent.3)
data <- rbind(data2, data3)
p <- ggplot(data,aes(x,y,group=exponent, color=exponent)) + geom_line()
p

私は明らかに何か間違ったことをしていますが、問題を見つけるのに助けが必要です。

4

2 に答える 2

5

ggplot2は、指数を連続変数として解釈します。したがって、返されるものpretty(c(2, 3))と同様に、いくつかのブレークが表示されます。

を使用するcolour = factor(exponent)か、カラーブレイクを明示的に指定できます。

于 2012-04-20T21:19:48.970 に答える
3

試す

p <- ggplot(data,aes(x,y,group=factor(exponent), color=factor(exponent))) + geom_line()
于 2012-04-20T21:17:12.433 に答える