其他
让你的ggplot2主题支持markdown和css
简介
mdthemes
包可以让你的ggplot2
支持Markdown语法,和之前介绍的ggtext
有异曲同工之妙啊!这个包其实也是基于ggtext
包的,但是mdthemes
更加强大!
安装
install.packages("mdthemes")
或者使用开发版:
if (!requireNamespace("remotes", quietly = TRUE)) {
install.packages("remotes")
}
remotes::install_github("thomas-neitmann/mdthemes", upgrade = "never")
使用
目前mdthemes
支持的主题非常多,已经支持以下R包的所有主题:ggplot2
/ggthemes
/hvbrthemes
/tvthemes
/cowplot
。使用也是非常方便,只要在主题前加上md_
即可!
library(ggplot2)
library(mdthemes)
data(mtcars)
p <- ggplot(mtcars, aes(hp, mpg)) +
geom_point() +
labs(
title = "This is a **bold** title",
subtitle = "And an *italics* subtitle",
x = "**_hp_**",
caption = "<span style = 'color:blue'>A blue caption</span>"
)
p + theme_minimal()
p + md_theme_minimal()
p + ggthemes::theme_fivethirtyeight()
p + md_theme_fivethirtyeight()
改变样式小例子
data("diamonds")
p <- ggplot(diamonds, aes(x = cut, fill = cut)) + geom_bar() +
labs(title = "<span style = 'color:#93C1DE'>**Roche**</span> in <span style = 'color:darkorange'>**mtcars**</span>",
caption = "Visiualized by <span style = 'color:#D52B1E'>**Ayue**</span>")
p + md_theme_minimal()
把其他主题变为支持markdown的主题
p + ggcharts::theme_hermit() # 默认不支持
使用as_md_theme
变成支持markdown的主题!
p + as_md_theme(ggcharts::theme_hermit())
坐标轴标签添加不同颜色
library(tidyverse)
data("gapminder", package = "gapminder")
data(biomedicalrevenue, package = "ggcharts")
label <- function(x) {
if (x %in% c("Roche", "Novartis")) {
paste0("<span style='color:#D52B1E'>**", x, "**</span>")
} else {
paste0("<span style='color:gray'>", x, "</span>")
}
}
spec <- ggcharts::highlight_spec(
what = c("Roche", "Novartis"),
highlight_color = "#D52B1E",
other_color = "gray"
)
biomedicalrevenue %>%
filter(year == 2018) %>%
ggcharts::bar_chart(
company,
revenue,
highlight = spec,
top_n = 10
) +
scale_x_discrete(labels = Vectorize(label)) +
labs(
x = NULL,
y = "Revenue in 2018 (Billion USD)",
title = glue::glue("Two {shiny::span('**Swiss**', style='color:#D52B1E')} Companies Are Among The Top 10 Big Pharma")
) +
md_theme_minimal_vgrid() +
theme(plot.title.position = "plot")
是不是非常神奇,作者表示有你喜欢的ggplot2
主题还未被mdthemes
支持,你可以直接去Github提issue,作者很乐意帮你加上哦。
空一行
以上就是今天的内容,希望对你有帮助哦!欢迎点赞、在看、关注、转发!
欢迎在评论区留言或直接添加我的微信!
欢迎关注我的公众号:医学和生信笔记
“医学和生信笔记 公众号主要分享:1.医学小知识、肛肠科小知识;2.R语言和Python相关的数据分析、可视化、机器学习等;3.生物信息学学习资料和自己的学习笔记!
往期精彩内容:
ggpairs展示数据间的相关性
ggduo展示两组数据间的相关性
ggnostic和ggcoef可视化回归模型
GGally包的实用函数