R data visulization cookbook

0.0.1 ggplot2中如何反转坐标轴?

使用scale_x_reverse()/scale_y_reverse()函数.

library(ggplot2)
library(magrittr)
p <- 
mtcars %>% 
  ggplot(aes(mpg, disp)) +
  geom_point() 
p

##反转X坐标轴
p + 
  scale_x_reverse()

# 反转y坐标轴
p + 
  scale_y_reverse()

0.0.2 ggplot2中如何修改绘图区域的边界?

theme()函数中设置plot.margin参数,且该参数应该是一个margin()函数构建的对象.

library(ggplot2)
library(magrittr)
p <- 
mtcars %>% 
  ggplot(aes(mpg, disp)) +
  geom_point(size = 2, colour = "skyblue") +
  theme_bw() +
  theme(plot.margin = margin(t = 0, r = 0, b = 0, l = 0, unit = "pt"))
p

0.0.3 如何获得合适的配色组合?

比较常见的配色工具包括ggsci,RColorBrewer等.且可以使用scales包中的show_col()函数来展示颜色.

library(ggsci)
library(scales)

test_colour <- 
  ggsci::pal_jama()(7)

show_col(test_colour)

test_colour <- 
  ggsci::pal_jama(alpha = 0.5)(7)

show_col(test_colour)

另外,RColorBrewer包也非常方便.

library(RColorBrewer)
##显示所有的配色
RColorBrewer::display.brewer.all()

##可以扩大弄每一种配色左边都有该配色的名字,因此如果想要单独显示该配色,直接使用下列命令.
RColorBrewer::display.brewer.pal(n = 9, name = "Set1")

##两个参数分别用来设置需要显示的颜色的个数以及配色的名字.
#如果需要将该配色名字提出来,使用下面命令
RColorBrewer::brewer.pal(n = 9, name = "Set1")
## [1] "#E41A1C" "#377EB8" "#4DAF4A" "#984EA3" "#FF7F00" "#FFFF33" "#A65628"
## [8] "#F781BF" "#999999"

0.0.4 ggplot2中如何反转坐标轴?

Avatar
Xiaotao Shen
Postdoctoral Research Fellow

Metabolomics, Multi-omics, Bioinformatics, Systems Biology.

Related

Next
Previous
comments powered by Disqus