使用格式: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语言中,有很多包可绘制柱状图,比如graphics包barplot()函数和ggplot2包geom_bar()函数。 本文介绍ggplot2包的geom_bar()函数绘制柱状图。
geom_bar()函数的基本用法:
[1] https://www.r-graph-gallery.com/
[2] Robert I. Kabacoff (著). R语言实战(高涛/肖楠/陈钢 译). 北京: 人民邮电出版社.
[3] https://www.jianshu.com/p/65b8aacefa20
[4] https://zhuanlan.zhihu.com/p/37865149
[5] https://blog.csdn.net/qq_37395039/article/details/107517927
q1, 首先要确定是barplot还是hist,如果是barplot的话,应该不存在breaks的问题,因为barplot的传入参数是个矩阵;
我假设你要画的是个hist,我偶遇过这个问题,我的理解是hist的breaks的值要能被范围整除才行;比如x=1:200,break=7的话,就只能画出4个柱来,但如果breaks=10就没问题;基本上是这样的,偶尔也有例外;比如break=5就不行....奇怪得很
最后,没办法的办法,就只能用barplot代替hist了,barplot肯定不会有这个问题,统计下hist参数中的分布情况,转换成矩阵,用barplot吧;
q2, 貌似一般都用一组因素把这些类别区分开,我用abcde,表示你的小学,中学...了,比如这样:
a=1:7b=8:10c=c(9,10,11)d=c(40,55)e=100:110f=factor(c(rep(1,sum(length(a),length(b),length(c))),rep(2,sum(length(d),length(e)))))#先用c()生成数组,在转换成factor,其实数组也ok的,不过plot()中两个数组和factor不一样
x=c(a,b,c,d,e)
plot(x~f)
q3, 就我所知不行;yes或no一定也要是能映射到x,y范围内的点才行;你是想表示分类结果吗?如果是的话,通常用颜色,或者在点旁边的text表示。
q4, 举个例子吧
x=-50:50y=x^2+x+1
z=10*abs(x)+1
plot(x,y,type='l')
lines(x,z,lty=3)
legend(c('type1','type2'), x=-20,y=2500, col=c('black','red'), lty=c(1,3))
legend的x和y是legend的左上角,匿名参数是类型名称,col,lty,pch 是对应的颜色,线类型,和点类型。
最后,我现在多用ggplot2,如果不抵触的话可以看看,和R的基础作图包思路不是很一样,但是图很清新的;
如果还有问题,建议把数据集data.frame粘贴几行上来,我也试试;