想要学习R数据可视化,小果带你见识ggplot2之标度(八)

小果对标度函数的讲解马上要接近尾声了,不知道小伙伴掌握了多少呢,一定要自己动手练习呀。小果接下来会完成标度函数的全部内容,在这之前小果还是先强烈推荐一下自己的工具平台
(http://www.biocloudservice.com/home.html),那么现在继续跟着小果的步伐完成剩下的标度函数内容吧。
1. Viridis 配色
Viridis是一种颜色映射方案,旨在提供在视觉上连续且易于解读的配色方案。Viridis配色方案在ggplot2中非常受欢迎,因为它可以有效地表示数据的连续性,并且在打印和屏幕上都具有良好的可读性。Viridis配色方案具有以下特点:
1.连续性:Viridis配色方案中的颜色是连续的,可以有效地表示数据的连续变化。
2.色彩饱和度:Viridis配色方案中的颜色具有适度的饱和度,使得数据的差异易于分辨,同时不会过于显眼。
3.亮度变化:Viridis配色方案中的颜色在亮度上也有变化,这有助于在不同的背景下保持可读性。
4.色盲友好:Viridis配色方案被设计为对色盲人士友好,可以在不同类型的色盲中区分颜色。
在ggplot2中使用Viridis配色方案,可以通过scale_fill_viridis()或scale_color_viridis()函数来设置。这些函数可以在图形中的填充颜色或边框颜色上应用Viridis配色方案。Viridis配色方案提供了四个不同的变体:Viridis、Magma、Plasma和Inferno。每个变体都具有不同的色调和亮度,可以根据需要选择适合的配色方案。
那么又到了小果的举例环节:
> dsamp <- diamonds[sample(nrow(diamonds), 2000), ]> dsamp# A tibble: 2,000 × 10carat cut color clarity depth table price x y z1 1.2 Good E SI1 64 61 7096 6.67 6.61 4.252 0.57 Ideal D VS2 61.8 56 1998 5.31 5.34 3.293 0.74 Very Good I SI1 63.8 58 2352 5.72 5.76 3.664 0.54 Ideal F VS2 60.3 55 1662 5.26 5.32 3.195 0.84 Fair D SI2 64.5 60 2167 5.92 5.84 3.796 1 Very Good D SI1 62.3 59 5342 6.26 6.29 3.917 0.9 Premium F SI1 62.6 60 3881 6.14 6.1 3.838 0.31 Ideal G VVS1 61.9 55 789 4.38 4.41 2.729 0.41 Premium G VVS1 60.3 60 1230 4.78 4.74 2.8710 0.5 Premium I VVS1 58.2 62 1415 5.25 5.19 3.04
小果用Viridis配色方案对以上数据配色。
> txsamp <- subset(txhousing, city %in%+ c("Austin", "Irving", "San Antonio", "Collin County", "Abilene"))> d <- ggplot(data = txsamp, aes(x = sales, y = median)) ++ geom_point(aes(colour = city))> p1 <- d + scale_colour_viridis_d("xiaoguo")> p2 <- d + scale_colour_viridis_d(option = "plasma")> p3 <- d + scale_colour_viridis_d(option = "inferno")> plot_grid(d, p1, p2, p3, labels = LETTERS[1:4], nrow = 2)

小果接下来设置填充色和反转颜色。
> p <- ggplot(txsamp, aes(x = median, fill = city)) ++ geom_histogram(position = "dodge", binwidth = 20000)> p1 <- p + scale_fill_viridis_d()> p2 <- p + scale_fill_viridis_d(direction = -1)> plot_grid(p1, p2, labels = LETTERS[1:4], nrow = 2)
2.连续型和离散型
接下来是小果对以前我们一起学过的函数的一些整合,小果就直接举例啦。
> faithfuld# A tibble: 5,625 × 3eruptions waiting density1 1.6 43 0.003222 1.65 43 0.003843 1.69 43 0.004444 1.74 43 0.004985 1.79 43 0.005426 1.84 43 0.005747 1.88 43 0.005928 1.93 43 0.005949 1.98 43 0.0058110 2.03 43 0.00554
我们用如上数据画一张热图。
v <- ggplot(faithfuld, aes(waiting, eruptions, fill = density))v + geom_tile()
小果来更改一些配色方案,我们可以设置为p1p3相同,p2p4相同,如下所示。
v <- ggplot(faithfuld, aes(waiting, eruptions, fill = density))++ geom_tile()p1 <- v + scale_fill_continuous(type = "viridis")p2 <- v + scale_fill_continuous(type = "gradient")p3 <- v + scale_fill_viridis_c()p4 <- v + scale_fill_gradient()plot_grid(p1, p2, p3, p4, labels = LETTERS[1:4], nrow = 2)

我们再来说一下离散型函数。
> ggplot(mpg, aes(cty, colour = factor(class), fill = factor(class))) ++ geom_density(alpha = 0.3)
小果来更改一下上图的配色。
> okabe <- c("#E03250", "#34B6E8", "#109C98", "#F1D332", "#0878A2", "#F33D11", "#CD88F8")> ggplot(mpg, aes(cty, colour = factor(class), fill = factor(class))) ++ geom_density(alpha = 0.2) ++ scale_color_discrete(type = okabe) ++ scale_fill_discrete(type = okabe)

好啦到这里小果对ggploy2中标度函数的讲解已经全部结束啦,不知道小伙伴们对这部分小果的讲解还满意吗,小果以后会更新更好更新的内容,也希望小伙伴们多跟小果交流,这样小果就有更新的目标和动力啦。最后提醒小伙伴们一定记得要关注小果的工具平台呀
(http://www.biocloudservice.com/home.html),
那今天小果的分享就到这里啦,拜拜
小果还提供思路设计、定制生信分析、文献思路复现;有需要的小伙伴欢迎直接扫码咨询小果,竭诚为您的科研助力!

定制生信分析
服务器租赁
扫码咨询小果


往期回顾
|
01 |
|
02 |
|
03 |
|
04 |