2017-02-13 1 views
0

с использованием этих data, я хочу одновременно отобразить эффекты двух категориальных факторов по многочленной переменной. Это, насколько аи может пойти:вывести влияние двух категориальных факторов на неупорядоченную многочленную переменную в R

require(ggplot2) 
df=read.csv("example.csv") 
ggplot(df,aes(x=treatment , y=option, group=morph)) + 
geom_bar(stat = "identity")+ 
scale_colour_brewer(palette="Set1")+ 
ylab("Escape strategy")+ 
xlab("Treatment") 

Я после того, как граф, в котором для каждого лечения есть два бара, один для каждого морфинга, и в каждом столбике, частота каждого варианта показана в цвете заполняя пропорциональную длину сплошного стержня.

Заранее спасибо.

ответ

1

Вот один из подходов к отображению штриховых графиков для трех категориальных переменных. Я добавил минимальный пример набора данных для воспроизводимости (на основе ваших опубликованных данных).

# Small example data set. 
dat = read.table(header=TRUE, 
text="option treatment morph 
burrow a c 
hide a c 
hide a c 
hide a c 
run a c 
run a c 
burrow a d 
burrow a d 
burrow a d 
hide a d 
run a d 
run b c 
run b c 
run b c 
burrow b c 
hide b c 
burrow b d 
burrow b d 
hide b d 
run b d") 


library(ggplot2) 

p1 = ggplot(dat, aes(x=morph, fill=option)) + 
    geom_bar(position="fill") + 
    scale_fill_brewer(palette="Set1") + 
    facet_grid(. ~ treatment, labeller=label_both) 

ggsave("bar_plot.png", p1, height=6, width=6, dpi=150) 

enter image description here

+0

Это здорово! Однако теперь я не могу изменить имя переменной ответа. –

+1

@Aguscamacho, я не уверен, что понимаю проблему. Вы можете добавить '+ ylab (« Стратегия побега »)', чтобы изменить метку оси y. Кроме того, возможно, вы хотите попробовать 'geom_bar (position =" stack ")' и 'geom_bar (position =" dodge ")', чтобы показать счеты по y-axix (вместо фракции). – bdemarest

+0

Я не могу понять, почему я не мог вчера и сегодня. Спасибо за другой совет! –

Смежные вопросы