Для моего рисунка ggplot я хочу пометить категории на столбчатой диаграмме, чтобы первое слово было выделено курсивом, а следующие слова не были выделены курсивом. Я хочу, чтобы ярлыки категорий выглядели следующим образом:
Staphylococcacae (OTU 1)
Стрептококк (OTU 300)
Я нашел примеры использования expression()
, где я могу выделить несколько ярлыков категорий курсивом, но я хотел бы иметь возможность сделать это для многих разных категорий.
Код для построения графика выглядит следующим образом (но в моих данных есть намного больше полос для построения).
library(ggplot2)
data <- data.frame(
bactname = c("Staphylococcaceae", "Moraxella", "Streptococcus", "Acinetobacter"),
OTUname = c("OTU_1", "OTU_2", "OTU_3", "OTU_4"),
value = c(-0.5, 0.5, 2, 3)
)
data$name <- paste0(
data$bactname, " (", data$OTUname, ")"
)
data$name <- factor(
data$name,
levels = data$name[order(data$value)], ordered = TRUE
)
ggplot(data, aes(name, value)) +
geom_col() + coord_flip()
Создано 28 января 2020 г. пакетом REPEX (v0.3.0)