使用格式:hist(x,breaks=n,main="name",labels=FASLE,col="blue",border="red",freq=TRUE)
x 向量,直方图的数据
breaks 描直方图的断点,例如breaks=20表示画出20个柱子;
labels 逻辑变量,TRUE标出频数
main 标题
col 颜色
border外框颜色
freq 逻辑变量,TRUE为数据频数,默认为TRUE;FALSE则为密度
我们可以用lines画出数据的密度曲线
还可以画正态分布的密度曲线
使用格式 ggplot(data,aes(x=class))+geom_bar()
x 绘制的数据
或者 ggplot(data,aes(y=class))+geom_bar(),则类型分布在y轴
当想看在该因素中其他因素的情况,可以利用fill进行绘制,得出叠堆条形图
横向的柱状
大多数时候我们想比较多个组直接某些因素的情况,例如有时候我们要画几个样本中各个细胞比例的情况
这是我们可以画堆叠条形图
此时不好比较,我们可以把同类型细胞放在一块比较,即横坐标变为细胞类型
在实验过程中可以采用容易分析的形式进行比较
以上是基本绘制的参数,此外还有美化的一些参数
labs 横纵坐标轴的名称
ggttitle 标题名称
geom_bar(width= )设置条形大小,默认情况下,设置为数据分辨率的90%。
theme_bw() 改变背景颜色
scale_fill_manual 自定义颜色
更多参数见 R语言绘图——数据可视化ggplot2 介绍和主要的参数
R中的画地图的方法不外乎两种,一种是利用GIS方面的数据,在R中画出来,另一种是直接从谷歌地图等地方拿来主义。先说第一种,最早应该是从maps包开始的,这个包里没记错的话应该用map函数为主,
>map("world", fill = TRUE, col = rainbow(200),ylim = c(-90, 90), mar = c(0, 2, 0, 0))
>title("worldmap")
这种用法大家应该很熟了,比较可惜的是里面的数据是在是太少了,连张中国地图都画不了,好在后来有了mapdata等一系列的包,CRAN上maps包后面那一串全是。
具体的内容看一下文档就ok啦,可是问题又来了,R包里的数据总是不够用的,而且还不新,这个时候就可以考虑sp包了,包里的spplot函数可以用来画地图
可以用内置的graphic包来画,就是plot()和curve()
也可以用ggplot2来画,后者更灵活。
graphic
# 先生成一组随机数x <- rnorm(2000)
# 画频率直方图, 分30个bin
hist(x, freq = F, breaks = 30)
# 再画概率分布曲线
lines(density(x, bw=.5), col="red", lwd=2)
2. ggplot2
# 准备工作, 把x设成一个数据集library(ggplot2)
data <- data.frame(x = x)
# 生成底层和直方图,概率线的图层
p <- ggplot(data, aes(x = x, y = ..density..))
p <- p + geom_histogram(fill = "navy")
p <- p + geom_density(colour = "green")
p
画出来风格不太一样,看你口味了