#r #ggplot2
#r #ggplot2
Вопрос:
Я создал точечный график для своих данных, но мне нужно помочь с последними штрихами. Я немного изучал stackoverflow и еще не видел сообщений, которые напрямую отвечали бы на мои запросы.
Мой код для моего точечного графика:
ggplot()
geom_dotplot(mapping = aes(x= reorder(Description, -p.adjust), y=Count, fill=-p.adjust),
data = head(X[which(X$p.adjust < 0.05),], n = 15), binaxis = 'y', dotsize = 2,
method = 'dotdensity', binpositions = 'all', binwidth = NULL)
scale_fill_continuous(low="black", high="light grey")
labs(y = "Associated genes", x = "wikipathways", fill = "p.adjust")
theme(axis.text=element_text(size=8))
ggtitle('')
theme(plot.title = element_text(2, face = "bold", hjust = 1),
legend.key.size = unit(2, "line"))
theme(panel.background = element_rect(fill = 'white', colour = 'black'))
coord_fixed(ratio = 0.5)
coord_flip()
Допустим, X — это что-то вроде:
Description p.adjust Count GeneRatio
1 DescriptionA 0.001 3 3/20
2 DescriptionB 0.002 2 2/20
3 DescriptionC 0.003 5 5/20
4 DescriptionD 0.004 10 10/20
Для завершения этого графика мне нужно два изменения.
Я хотел бы использовать базовый размер точек в GeneRatio и создать вторичный ключ на основе этого размера. Возможно ли это с помощью ggplot2, dotplots?
Далее я хотел бы сохранить значения по оси X в виде целых чисел. Я бы хотел избежать использования чего-то вроде scale_x_continuous(limits = c (2, 10)), поскольку этот код графика является частью функции для нескольких наборов данных разных размеров. Таким образом, ограничение / масштаб не будут работать хорошо.
Помощь была бы очень признательна.
Ответ №1:
Если вы можете переключиться на диаграмму geom_point вместо geom_dotplot, легко настроить размер точки в соответствии с переменной. К счастью, это также исправило проблему с вашей осью.
ggplot(x)
geom_point(mapping = aes(x= reorder(Description, -p.adjust), y=Count, fill=-p.adjust, size=GeneRatio),
data = head(x[which(x$p.adjust < 0.05),], n = 15), binaxis = 'y', #dotsize = 2,
method = 'dotdensity', binpositions = 'all', binwidth = NULL)
scale_fill_continuous(low="black", high="light grey")
labs(y = "Associated genes", x = "wikipathways", fill = "p.adjust")
theme(axis.text=element_text(size=8))
ggtitle('')
theme(plot.title = element_text(2, face = "bold", hjust = 1),
legend.key.size = unit(2, "line"))
theme(panel.background = element_rect(fill = 'white', colour = 'black'))
coord_fixed(ratio = 0.5)
coord_flip()