1.获取示例数据
“生信星球”公众号回复gene_len.csv即可获得
--数据来自基因课《ggplot2-绘图的艺术》
读取数据:
gene_len <- read.csv("gene_len.csv",row.names = 1)
2.专业术语
窗口=图上的柱子。根据下面两组图来理解(颜色设计还是因为我开心)
(1)用bins定义窗口数量
100个窗口25个窗口
(2)用binwidth定义窗口的大小。
窗口大小为1000窗口大小为100
3.生成图片的代码
按照bins定义
ph <- ggplot(data = gene_len,aes(fill=..count..))
ph + geom_bar(stat = "bin",#stat=“bin”可以省略,因为是默认值
bins = 25,
aes(x = Length, y = ..count..))
#直方图 geom_histogram
#在直方图中指定统计方式是按照窗口进行统计
#“..count..”是ggplot 里的特殊变量,代表统计变换里每个窗口里的计数。
按照binwidth定义
ph <- ggplot(data = gene_len,aes(fill=..count..))
ph + geom_bar(stat = "bin",
binwidth = 1000, #把这里去掉一个0就是100
aes(x = Length, y = ..count..))
4.统计变换与几何对象
作图思路是先确定了做直方图,然后选择了统计方式是根据窗口大小。
统计变换和几何对象是ggplot绘图的两个侧面,缺一不可。每种几何对象默认对应一种统计变换,每种统计变换也默认对应一个几何对象。
另一种思路是先确定统计方式,再选择直方图。
ph + stat_bin(binwidth = 100,
geom = "bar" ,#bar代表直方图。可省略,因为是默认值
aes(x = Length, y = ..count..))
两种思路没有优劣之分。
网友评论