小果带你认识R数据可视化之ggplot坐标系(一)






小果带你认识R数据可视化之ggplot坐标系(一)

小师妹  生信果  2024-02-05 19:00:46

小果继续带大家学习R数据可视化,今天我们要认识的是坐标系这一部分内容。在这之前小果还是先强烈推荐一下自己的工具平台(http://www.biocloudservice.com/home.html),那么接下来就跟随着小果的步伐往下看吧。
 

在ggplot2中,有多种不同的坐标系(coordinate systems)可用于可视化数据。每种坐标系都有不同的用途和适用范围。以下是ggplot2中的六种常见坐标系的介绍:

1.Cartesian Coordinates(笛卡尔坐标系):这是最常见的坐标系,用于绘制散点图、线图、柱状图等。x轴和y轴是垂直和水平的,数据点在二维平面上进行绘制。

2.Polar Coordinates(极坐标系):极坐标系用于绘制雷达图、极坐标散点图等。数据点在极坐标系中由半径和角度表示,而不是直角坐标系中的x和y坐标。

3.Map Projections(地图投影):地图投影坐标系用于绘制地图数据。它将地球表面的经纬度坐标投影到平面上,以便在地图上进行可视化。

4.Flip Coordinates(翻转坐标系):翻转坐标系用于在绘图时翻转轴的方向。例如,可以将y轴翻转为从上到下,而不是从下到上。

5.Transformed Coordinates(变换坐标系):变换坐标系用于对数据进行非线性变换。例如,可以使用对数变换将数据在坐标系中呈现为对数比例。   

6.Non-Cartesian Coordinates(非笛卡尔坐标系):非笛卡尔坐标系用于绘制特殊类型的图形,如等高线图、热力图等。这些坐标系使用其他方式来表示数据点的位置,而不是直角坐标系。

在ggplot2中,可以使用coord_cartesian()、coord_polar()、coord_map()、coord_flip()、coord_trans()和coord_quickmap()函数来指定不同的坐标系。这些函数可以与其他ggplot2函数一起使用,以创建特定类型的数据可视化。

1.笛卡尔
 

1.1 coord_cartesian函数
 

笛卡尔坐标系(Cartesian Coordinates)是最常见的坐标系之一,用于绘制散点图、线图、柱状图等。在笛卡尔坐标系中,数据点在二维平面上由水平的x轴和垂直的y轴表示。

又到了小果的举例环节啦:

> p <- ggplot(mtcars, aes(disp, wt)) ++   geom_point() ++   geom_smooth()> p

如上图所示,我们可以用不同的方式对其进行缩放。

> # 范围之外的数据会被设置为 NA> p1 <- p + scale_x_continuous(limits = c(350, 500))> # 只放大某一范围> p2 <- p + coord_cartesian(xlim = c(350, 500))> plot_grid(p1, p2, labels = LETTERS[1:2])

          

小果再来举个热图的例子。

> d <- ggplot(diamonds, aes(carat, price)) ++   stat_bin2d(bins = 20, colour = "purple")> d

 

              

如上图,我们也可以用不同的方式对其进行缩放。

> p1 <- d + scale_x_continuous(limits = c(0, 1))> p2 <- d + coord_cartesian(xlim = c(0, 1))> plot_grid(p1, p2, labels = LETTERS[1:2])

          

1.2 coord_fixed函数
 

coord_fixed()是ggplot2中用于设置坐标系比例固定的函数。它可以用于绘制等比例的图形,确保图形在x轴和y轴上的比例保持不变。使用coord_fixed()函数时,可以通过指定ratio参数来设置x轴和y轴的比例。默认情况下,ratio参数的值为1,表示x轴和y轴的比例相等。如果将ratio参数设置为其他值,那么x轴和y轴的比例将按照指定的比例进行缩放。   

下面小果来举个简单的例子:

我们先请出我们的老朋友吧。

> p <- ggplot(mtcars, aes(mpg, wt)) + geom_point()> p

小果试着设置不同的ratio 值来看一下效果。

> p1 <- p + coord_fixed(ratio = 1)> p2 <- p + coord_fixed(ratio = 3)> p3 <- p + coord_fixed(ratio = 1/3)> p4 <- p + coord_fixed(xlim = c(15, 25))> plot_grid(p1, p2, p3, p4, labels = LETTERS[1:4], nrow = 4)

    

好啦,今天小果的分享就到这里啦,不知道小伙伴们收获了多少知识呢,小果在后面的文章中还会继续更新坐标轴的知识,小伙伴们记得随时关注小果哦,最后提醒小伙伴们一定记得要关注小果的工具平台呀

(http://www.biocloudservice.com/home.html),

小伙伴们再会啦。

小果还提供思路设计、定制生信分析、文献思路复现;有需要的小伙伴欢迎直接扫码咨询小果,竭诚为您的科研助力!


定制生信分析

服务器租赁

扫码咨询小果


往期回顾

01

1024G存储的生信服务器,两人成团,1人免单!

02

单个数据库用腻了?多数据库“组合拳”带你打开免疫浸润新思路!

03

孟德尔随机化的准备工作,GWAS数据的网站下载方法

04

跟着小果学复现-手把手带你拿下IF=46.9Nature 级别的主成分分析(PCA)图!!