Ggplot2'de gruba göre histogramlar nasıl oluşturulur (örnekle)
Ggplot2’de grup bazında histogram oluşturmak için aşağıdaki temel sözdizimini kullanabilirsiniz:
ggplot(df, aes(x=values_var, fill=group_var)) + geom_histogram(color=' black ', alpha= 0.4 , position=' identity ') + scale_fill_manual(values=c(' red ', ' blue ', ' purple '))
Bu özel örnek, üst üste binen üç kırmızı, mavi ve mor histogramdan oluşan bir çizim oluşturur.
Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.
Örnek: ggplot2’de gruba göre bir histogram oluşturma
R’de üç farklı takımdan basketbolcuların attığı puanlar hakkında bilgi içeren aşağıdaki veri çerçevesine sahip olduğumuzu varsayalım:
#make this example reproducible
set. seeds (1)
#create data frame
df <- data. frame (team=rep(c(' A ', ' B ', ' C '), each=100),
points=c(rnorm(100, mean=10),
rnorm(100, mean=15),
rnorm(100, mean=20)))
#view head of data frame
head(df)
team points
1 A 9.373546
2 A 10.183643
3 A 9.164371
4 A 11.595281
5 A 10.329508
6 A 9.179532
Üç takımın her birinin attığı puanların dağılımını gösteren histogramlar oluşturmak için aşağıdaki kodu kullanabiliriz:
library (ggplot2)
#create histogram by team
ggplot(df, aes(x=points, fill=team)) +
geom_histogram(color=' black ', alpha= 0.4 , position=' identity ') +
scale_fill_manual(values=c(' red ', ' blue ', ' purple '))
Üç histogram, her takımın oyuncuları tarafından atılan puanların dağılımını temsil eder.
Grafiğin sağ tarafındaki efsane, her takıma hangi rengin karşılık geldiğini gösterir.
Renk bağımsız değişkeninin her histogramdaki çubukların anahat rengini belirttiğini ve alfa bağımsız değişkeninin çubuklar için kullanılacak şeffaflığı (0 ile 1 arasında) belirttiğini unutmayın.
Alfa değerini 1’den küçük bir değere ayarlayarak histogramlar arasındaki örtüşen çubukları görebiliriz.
Çizimdeki etiketleri değiştirmek ve tarzınıza uygun bir ggplot2 teması seçmek için labs() işlevini kullanmaktan çekinmeyin:
library (ggplot2)
#create histogram by team
ggplot(df, aes(x=points, fill=team)) +
geom_histogram(color=' black ', alpha= 0.4 , position=' identity ') +
scale_fill_manual(values=c(' red ', ' blue ', ' purple ')) +
labs(fill=' Team ', x=' Points Scored ', y=' Count ', title=' Points Scored by Team ') +
theme_classic()
Ek kaynaklar
Aşağıdaki eğitimlerde R’de diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
R’de göreceli frekans histogramı nasıl oluşturulur
R’de tek bir grafikte birden fazla kutu grafiği nasıl çizilir
R’de bir grafikte birden fazla çizgi nasıl çizilir