我有一个情节,其图例应包含两个级别。 Ggplot 显示了一个具有六个级别的图例,其中四个没有出现在数据框中。问题的简单再现如下所示:

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

我显然做错了什么,但需要帮助才能找到问题。

最佳答案

ggplot2 将指数解释为连续变量;因此它显示了一些类似于 pretty(c(2, 3)) 返回的中断。

您可以使用 colour = factor(exponent) ,或明确指定颜色中断。

关于r - ggplot图例显示数据中不存在的级别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10253552/

10-13 00:51