Я нахожусь на моем пути завершения графиков для бумаги и решил ( после обсуждения stats.stackoverflow ), чтобы передать как Как можно больше информации, чтобы создать следующий график, который представляет как на переднем плане средние, так и на заднем плане необработанные данные:
Тем не менее, остается одна проблема - это перетерпение. Например, отмеченная точка выглядит так, как будто она отражает одну точку данных, но на самом деле в этом месте существует 5 точек данных с одинаковым значением.
Поэтому я хотел бы знать, есть ли способ справиться с переполнением в базовый граф
с использованием точек
в качестве функции.
Было бы идеально, если, например, соответствующие точки становятся темнее, или толще, или ...
Выполнение вручную не вариант (слишком много графиков и точек, как это). Кроме того, ggplot2
также не то, что я хочу научиться решать эту единственную проблему (одна из причин заключается в том, что я склонен любить двойные оси, что не поддерживается в ggplot2
). 126] Обновление: Я написал функцию, которая автоматически создает вышеприведенные графики и избегает переполнения, добавляя вертикальный или горизонтальный джиттер (или оба): проверьте это!
Эта функция теперь доступна как raw.means. plot
и raw.means.plot2
в пакете plotrix
(на CRAN).
Стандартный подход заключается в добавлении некоторого шума к данным перед построением графика. В R есть функция jitter(), которая делает именно это. Вы можете использовать его, чтобы добавить необходимый шум к координатам на вашем графике. например:
X <- rep(1:10,10)
Z <- as.factor(sample(letters[1:10],100,replace=T))
plot(jitter(as.numeric(Z),factor=0.2),X,xaxt="n")
axis(1,at=1:10,labels=levels(Z))
Вы также можете использовать sunflowerplot, хотя это будет сложно реализовать здесь. Я бы использовал альфа-смешивание, как предложил Дирк.
Еще одна идея для общей проблемы отображения количества точек заключается в использовании ковер-графика (функция коврика), который размещает небольшие метки вдоль поля, которые могут показать, сколько точек вносит вклад (по-прежнему используйте дрожание или альфа-смешивание для связи ). Это позволяет фактическим точкам показывать свои истинные, а не искаженные значения, но затем ковер может указать, какие части графика имеют больше значений.
Для примера графика, вероятно, лучше всего подходит прямое дрожание или альфа-смешивание, но в некоторых других случаях может быть полезен ковер-график.