Как построить несколько гистограмм для двух факторов - PullRequest
0 голосов
/ 18 февраля 2019

У меня есть data.frame, подобный этому (упрощенно, на самом деле есть больше значений для параметра):

   params        value status
1    par1 9.214378e-01   good
...
5    par1 3.907796e+03   good
6    par1 1.440000e-01   bad
...
13   par1 5.343397e+01   bad
14   par2 3.430469e-03   good
...
18   par2 5.722368e-01   good
19   par2 3.764936e-03   bad
...
26   par2 1.291550e-01   bad
27   par3 4.750810e-01   good

со значениями для 20 параметров для двух факторов, каждый из которых «хороший» / «плохой».Я хотел бы представить его в виде набора диаграмм в табличной форме, где я вижу различия «хорошо» и «плохо», по две перекрывающиеся гистограммы для каждого параметра.Каждый параметр живет в своем характерном интервале.

Я пробовал с ggplot

p1 <- ggplot(data = DF) +
  geom_histogram(aes(x=value, color=status)) +
  facet_wrap(~params)

, но это не работает - столбцы накладываются друг на друга enter image description here

Ответы [ 2 ]

0 голосов
/ 18 февраля 2019

Используйте position = 'dodge', в противном случае столбцы будут составлять.

Я думаю, вы ищете:

ggplot(data = data, aes(x=value, fill=status)) +
           geom_histogram(position = 'dodge') +
           facet_wrap(~params)

Пожалуйста, уточните свой вопрос, то есть это не 2 фактора,но один с 2 уровнями.

0 голосов
/ 18 февраля 2019

Я думаю, что нашел решение, среди прочего scales = "free", отсутствовало

p1 <- ggplot(data = DF) +
  geom_histogram(aes(x=value, fill=as.factor(status))) +
  facet_wrap(~params,scales = "free")

Графики выглядят теперь, только для 10 параметров, enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...