У меня есть данные в следующем формате (здесь импортированы из файла CSV). Вы можете найти пример набора данных в формате CSV здесь .
PAIR PREFERENCE
1 5
1 3
1 2
2 4
2 1
2 3
… и так далее. Всего имеется 19 пар, а ПРЕДПОЧТЕНИЕ
варьируется от 1
до 5
в виде дискретных значений.
Мне нужна гистограмма с накоплением, например столбец с высотой 100% для каждой пары, показывающий распределение значений PREFERENCE
.
Что-то похожее на «100% составные столбцы» в Excel или (хотя и не совсем то же самое, так называемый «мозаичный график»):
Я решил, что это будет проще всего использовать ggplot2
, но я даже не знаю, с чего начать. Я знаю, что могу создать простую гистограмму с чем-то вроде:
ggplot(d, aes(x=factor(PAIR), y=factor(PREFERENCE))) + geom_bar(position="fill")
… но это меня не очень продвинет. Итак, я попробовал это, и это приближает меня к тому, чего я пытаюсь достичь, но, полагаю, он все еще использует счетчик PREFERENCE
? Обратите внимание на то, что ylab
здесь является «счетчиком», а значения варьируются до 19.
qplot(factor(PAIR), data=d, geom="bar", fill=factor(PREFERENCE_FIXED))
Результаты в:
Кстати, это на самом деле не связано с этим вопросом , а лишь частично связано с этим (то есть, вероятно, с той же идеей, но не непрерывные значения, а сгруппированные в столбцы).