en Keşke iki çizgisinin çizilmesi ve her biri için bir renk grubu belirtilmeden ediyorum buBen birleştirmek nasıl aes() ve aes_string() seçenekleri
library(ggplot2)
ggplot(mtcars, aes(x=wt)) + ylab("") +
geom_line(aes(y=mpg, color="one")) +
geom_line(aes(y=qsec, color="two")) +
scale_color_manual(name="Val", values=c(one="#105B63",two="#BD4932"))
gibi bir arsa var diyelim. Şimdi ben
v1<-"mpg"
v2<-"qsec"
ggplot(mtcars, aes(x=wt)) + ylab("") +
geom_line(aes_string(y=v1, color="one")) +
geom_line(aes_string(y=v2, color="two")) +
scale_color_manual(name="Val", values=c(one="#105B63",two="#BD4932"))
çalışırsanız ben hatayı olsun aes_string().
kullanmanız gerekir anlamına gelir karakter değerleri olarak dinamik değişkenler isimleri belirtmek istediğiniz diyelim
Error in eval(expr, envir, enclos) : object 'one' not found
şimdi aes_string()
çalıştığı için Sadece bir literal karakter değeri istediğimde renk değerini ayrıştırır. Ben
ggplot(mtcars, aes(x=wt)) + ylab("") +
geom_line(aes_string(y=v1), aes(color="one")) +
geom_line(aes_string(y=v2), aes(color="two")) +
scale_color_manual(name="Val", values=c(one="#105B63",two="#BD4932"))
çalışırsanız Ve muhtemelen katman iki estetik yönergelerin nasıl işleneceği bilmediği için
Error: ggplot2 doesn't know how to deal with data of class uneval
olsun.
aes()
ve aes_string()
estetiklerini nasıl birleştirebilirim veya aes_string()
için basit karakter değerlerini nasıl belirleyebilirim?
Güzel, yaşadığımın farkında bile olmadığım bir problemi çözdünüz;) (+1.5) – BrodieG