У меня есть набор данных, который имеет два значения для каждой строки, которые я хотел бы строить друг против друга.geom_smooth раскраска для двух значений в строке
Например:
RHC,1,0.370,0.287,0.003,0.063
SA,1,0.352,0.258,0.003,0.057
GA,1,0.121,0.091,0.430,0.008
Я хочу построить отдельную строку для каждого столбца, сгруппированные по первой колонке. Например. для строки RHC я рисую {x, y1} и {x, y2} из {1,0.370} и {1,0.287} соответственно.
Следующая ggplot/geom_smooth выполняет это:
ggplot(data=d) +
geom_smooth(aes(x=iterations, y=training.error, col=algorithm)) +
geom_smooth(aes(x=iterations, y=testing.error, col=algorithm))
Однако обе линии в конечном итоге с одной записью легенды и одного цвета ... что делает их невозможно отличить.
Как я могу применить другой цвет и соответствующую запись легенды для каждой строки, созданной каждым вызовом geom_smooth
?
Для воспроизведения:
library(ggplot2)
d <- read.csv("https://gist.githubusercontent.com/jameskyle/8d233dcbd0ad0b66bfdd/raw/9c975ac9d9bbcb633e44cfd70b66f7ab89dc1517/results.csv")
p1 <- ggplot(data=d) +
geom_smooth(aes(x=iterations, y=training.error, col=algorithm)) +
geom_smooth(aes(x=iterations, y=testing.error, col=algorithm))
pdf("graph.pdf")
print(p1)
dev.off()
Приведенный выше код будет производить:
Пожалуйста, прочитайте информацию о том, как дать [минимальный воспроизводимый пример] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example/5963610). – Jaap
Пример кода и предоставленные данные. –