İki değişkene bölünmüş 12 değişkenli bir grafiğim var. Yüzleri kullanamıyorum, ancak renk ve şekil kullanarak, görselleştirmeyi anlaşılması kolay hale getirdim. Ancak, örtüşen (kısmen veya tamamen) bazı noktalar vardır. Bunlarla uğraşmak için jitter kullanıyorum, ancak ekli grafikten de görebileceğiniz gibi, bu sadece tümüyle çakışan noktalara değil, etrafta taşınan tüm noktalara götürür. Jitter in ggplot2 ile koşullu kullanımı geom_point
Koşullu olarak jitter veya dodge kullanmanın bir yolu var mı? Daha da iyisi, kısmen çakışan noktaları yan yana koymanın bir yolu var mı? Gördüğünüz gibi, x eksenim ayrı kategorilerdir ve sol/sağa hafif bir kayma önemli değildir. binaxis='y'
ile dotplot kullanmayı denedim, ancak bu tamamen x eksenini bozuyor.
Düzenleme: This graph aradığım tam olarak ne yapmak başarmıştır.
Daha düzenleme: Bu görselleştirme arkasında kod ekleme.
disciplines <- c("Comp. Sc.\n(17.2%)", "Physics\n(19.6%)", "Maths\n(29.4%)", "Pol.Sc.\n(40.4%)", "Psychology\n(69.8%)")
# To stop ggplot from imposing alphabetical ordering on x-axis
disciplines <- factor(disciplines, levels=disciplines, ordered=T)
# involved aspects
intensive <- c(0.660, 0.438, 0.515, 0.028, 0.443)
comparative <- c(0.361, 0.928, 0.270, 0.285, 0.311)
wh_adverbs <- c(0.431, 0.454, 0.069, 0.330, 0.577)
past_tense <- c(0.334, 0.229, 0.668, 0.566, 0.838)
present_tense <- c(0.680, 0.408, 0.432, 0.009, 0.996)
conjunctions <- c(0.928, 0.207, 0.162, -0.299, -0.045)
personal <- c(0.498, 0.521, 0.332, 0.01, 0.01)
interrogative <- c(0.266, 0.202, 0.236, 0.02, 0.02)
sbj_objective <- c(0.913, 0.755, 0.863, 0.803, 0.913)
possessive <- c(0.896, 0.802, 0.960, 0.611, 0.994)
thrd_person <- c(-0.244, -0.265, -0.310, -0.008, -0.384)
nouns <- c(-0.602, -0.519, -0.388, -0.244, -0.196)
df1 <- data.frame(disciplines,
"Intensive Adverbs"=intensive,
"Comparative Adverbs"=comparative,
"Wh-adverbs (WRB)"=wh_adverbs,
"Verb: Past Tense"=past_tense,
"Verb: Present Tense"=present_tense,
"Conjunctions"=conjunctions,
"Personal Pronouns"=personal,
"Interrogative Pronouns"=interrogative,
"Subjective/Objective Pronouns"=sbj_objective,
"Possessive Pronouns"=possessive,
"3rd-person verbs"=thrd_person,
"Nouns"=nouns,
check.names=F)
df1.m <- melt(df1)
grp <- ifelse(df1.m$variable %in% c('3rd-person verbs','Nouns'), 'Informational Features', 'Involved Features')
g <- ggplot(df1.m, aes(group=grp, disciplines, value, shape=grp, colour=variable))
g <- g + geom_hline(yintercept=0, size=9, color="white")
g <- g + geom_smooth(method=loess, span=0.75, level=0.95, alpha=I(0.16), linetype="dashed")
g <- g + geom_point(size=4, alpha=I(0.7), position=position_jitter(width=0.1, height=0))
g <- g + scale_shape_manual(values=c(17,19))
Eğer ... diğerleri ile oynamak – agstudy
Eklenen kod sağlamak için (veri + kodu), artırılabilir bir örnek sağlamalıdır. Umarım bu yardımcı olur :-) –
Kod için teşekkürler. Not; Çizginiz biyomed örnek kadar temiz görünmeyecektir, çünkü Y değerleriniz her yerde olur, ancak yine de aşağıdaki sırayla x değerlerini sıralayabilirsiniz. –
beroe