чтение многих графиков приводит к тому, что полученные графики становятся крошечными и сжатыми вместе

avatar
Ganon
1 июля 2021 в 20:52
59
1
0

Я написал некоторый код для создания диаграммы для каждого значения в столбце "Реплика" моего фрейма данных. Это работает, если есть, скажем, 4 уникальных значения в столбце. Однако, когда значений много, выдаваемый график выглядит как это, все настолько сжато и плотно упаковано, что становится невозможно ничего увидеть.

код для создания графиков:

`ggplot(dataframe, aes(x=Replica, y=value, fill=concentration)) +
  stat_boxplot(geom = "errorbar", width = 0.1)+
  geom_boxplot(fill="red") +
  scale_y_log10() +
  labs(title="", x="", y="Distance moved in 60s (log10 scale)")+
  facet_wrap(~population + history + concentration)`

Реплика, значение, концентрация, население и история — все это заголовки столбцов в фрейме данных.

Есть ли способ отформатировать и экспортировать их, чтобы они не были неразборчивыми? Помощь будет принята с благодарностью!

Источник
Adam Quek
2 июля 2021 в 02:31
0

Если цифра неразборчива, то, вероятно, это признак того, что вы пытаетесь отобразить слишком много. Подумайте, какова ваша мотивация для визуализации, и оцените, нужно ли вам отображать все графики на одном рисунке. Если нет, разумным подходом может быть отображение с использованием меньшего подмножества данных (меньшего типа населения) для каждой цифры и создание отдельных цифр.

Ответы (1)

avatar
user1697590
2 июля 2021 в 06:25
0

Как указывает Адам... вы, вероятно, пытаетесь показать слишком много.

Сказав это, способ заставить его работать может состоять в том, чтобы использовать пэчворк вместо facet_wrap.

dataframe$sets <- paste(dataframe$population, dataframe$history, dataframe$concentration)     
map(unique(dataframe$sets), ~ dataframe %>% filter(sets == .) %>% ggplot...)
patchwork::wrap_plots()

Возможно, вы захотите добавить geom_text или аннотацию или что-то еще с помощью "набора". Тем не менее, вы все равно получите маленькие цифры, и нет никакого реального способа обойти это без увеличения цифры (например, 20x10 вместо 10x5) или меньшего количества отдельных участков (например, одна цифра для каждой популяции)