直方图绘制hist()

素娥

2020/9/27

本文我们要用iris数据集进行直方图的绘制

本文主要使用hist、plot函数进行绘制图片

首先还是观察数据类型

data<-iris
library(knitr)
tt<-head(data,15)
kable(tt)

Sepal.Length Sepal.Width Petal.Length Petal.Width Species
5.1 3.5 1.4 0.2 setosa
4.9 3.0 1.4 0.2 setosa
4.7 3.2 1.3 0.2 setosa
4.6 3.1 1.5 0.2 setosa
5.0 3.6 1.4 0.2 setosa
5.4 3.9 1.7 0.4 setosa
4.6 3.4 1.4 0.3 setosa
5.0 3.4 1.5 0.2 setosa
4.4 2.9 1.4 0.2 setosa
4.9 3.1 1.5 0.1 setosa
5.4 3.7 1.5 0.2 setosa
4.8 3.4 1.6 0.2 setosa
4.8 3.0 1.4 0.1 setosa
4.3 3.0 1.1 0.1 setosa
5.8 4.0 1.2 0.2 setosa

简单的直方图

相关参数

1.x:要画图的数据

2.breaks:数据分多少组

3.freq:若为T(默认)则绘制频数分布直方图,为F则绘制频率分布直方图

4.probability:与freq相反

我们绘制iris的叶片宽度的直方图

绘制分12组的频数分布直方图

hist(x=data$Sepal.Width,breaks = 12)

绘制分12组的频率分布直方图

x<-hist(x=data$Sepal.Width,breaks = 12,freq = F)

注意,此处的纵坐标是频率/组距

再叠加一条密度曲线。

hist(x=data$Sepal.Width,breaks = 12,freq = F)
lines(density(data$Sepal.Width))

#美化图像(图形颜色,打斜线等)

###相关参数

1.density :阴影线密度

2.angle:阴影线倾角

3.col:填充颜色

4.border:直方图边缘颜色

在第一幅图的基础上进行美化

先加斜线

hist(x=data$Sepal.Width,breaks = 12,density = 10,angle = 45)

在加上颜色和边框

hist(x=data$Sepal.Width,breaks = 12,density = 10,angle = 45,col = "red",
border = "blue")

不加斜线,直接写颜色

hist(x=data$Sepal.Width,breaks = 12,col = "red",
border = "blue")

美化图像(坐标轴,标题,标签)

相关参数

1.main, xlab, ylab :标题,x名称,y名称

2.xlim, ylim :x轴,y轴范围

3.axes:逻辑值,是否画坐标轴

4.labels:是否添加标签

先加上标题,x名称,y名称

hist(x=data$Sepal.Width,breaks = 12,main="直方图",xlab="叶片宽度",
ylab="频数")

设置x,y轴的范围

hist(x=data$Sepal.Width,breaks = 12,main="直方图",xlab="叶片宽度",
ylab="频数",xlim=c(2,4.5),ylim=c(0,40))

加上数据标签

hist(x=data$Sepal.Width,breaks = 12,main="直方图",xlab="叶片宽度",
ylab="频数",xlim=c(2,4.5),ylim=c(0,40),labels=T)

去掉坐标轴

hist(x=data$Sepal.Width,breaks = 12,main="直方图",axes=F,labels=T)

参数plot

是否画出图像

hh<-hist(x=data$Sepal.Width,breaks = 12,plot=F)
hh

## $breaks
## [1] 2.0 2.2 2.4 2.6 2.8 3.0 3.2 3.4 3.6 3.8 4.0 4.2 4.4
##
## $counts
## [1] 4 7 13 23 36 24 18 10 9 3 2 1
##
## $density
## [1] 0.13333333 0.23333333 0.43333333 0.76666667 1.20000000 0.80000000
## [7] 0.60000000 0.33333333 0.30000000 0.10000000 0.06666667 0.03333333
##
## $mids
## [1] 2.1 2.3 2.5 2.7 2.9 3.1 3.3 3.5 3.7 3.9 4.1 4.3
##
## $xname
## [1] "data$Sepal.Width"
##
## $equidist
## [1] TRUE
##
## attr(,"class")
## [1] "histogram"

hh展示的是直方图的相关值

间隔,频数,频率/组距,组中值等

接着用plot函数就可以继续绘制

hh<-hist(x=data$Sepal.Width,breaks = 12,plot=F)
plot(hh,col=rgb(0.7,0.2,0.2,alpha=0.5),border = "white",
main="直方图",xlab="叶片宽度",
ylab="频数",xlim=c(2,4.5),ylim=c(0,40),labels=T,
)

再往上加一条密度图

plot(hh,
freq=F,col=rgb(0.7,0.2,0.2,alpha=0.5),border = "white",
main="直方图",xlab="叶片宽度",
ylab="频数",xlim=c(2,4.5),ylim=c(0,1.5),labels=T,
)
lines(density(data$Sepal.Width),lwd=2,col=rgb(0.1,0.5,0.2))

r语言 plot_R语言直方图绘制hist(),plot()相关推荐

  1. R语言使用原生包(基础导入包、graphics)中的hist函数可视化直方图(histogram plot)

    R语言使用原生包(基础导入包.graphics)中的hist函数可视化直方图(histogram plot) 目录

  2. R语言ggplot2可视化散点图(scatter plot)、并在可视化图像的顶部和右边添加边缘直方图(Marginal Histogram)、使用geom_smooth函数基于lm方法拟合数据点之间

    R语言ggplot2可视化散点图(scatter plot).并在可视化图像的顶部和右边添加边缘直方图(Marginal Histogram).使用geom_smooth函数基于lm方法拟合数据点之间 ...

  3. R语言ggplot2可视化线图(line plot):当数据有中断、缺失时R不会将数据绘制为连续的线图、而是出现断点

    R语言ggplot2可视化线图(line plot):当数据有中断.缺失时R不会将数据绘制为连续的线图.而是出现断点 目录

  4. R语言可视化包ggplot2绘制分组的条形图(bar plot、柱状图)实战:多变量柱状图

    R语言可视化包ggplot2绘制分组的条形图(bar plot.柱状图)实战:多变量柱状图 目录

  5. R语言使用pROC包绘制ROC曲线实战:roc函数计算AUC值、plot.roc函数绘制ROC曲线、添加置信区间、为回归模型中的每个因子绘制ROC曲线并在同一个图中显示出来

    R语言使用pROC包绘制ROC曲线实战:roc函数计算AUC值.plot.roc函数绘制ROC曲线.添加置信区间.为回归模型中的每个因子绘制ROC曲线并在同一个图中显示出来 目录

  6. 三线表是什么?R语言使用table1包绘制(生成)三线表、构建不分层的三线表

    三线表是什么?R语言使用table1包绘制(生成)三线表.构建不分层的三线表 目录

  7. R语言使用table1包绘制(生成)三线表、使用单变量分列构建三线表、编写自定义函数在三线表中添加p值

    R语言使用table1包绘制(生成)三线表.使用单变量分列构建三线表.编写自定义函数在三线表中添加p值 目录

  8. R语言使用table1包绘制(生成)三线表、使用单变量分列构建三线表、设置transpose参数转置三线表、变量作为列,子组(strata)作为行

    R语言使用table1包绘制(生成)三线表.使用单变量分列构建三线表.设置transpose参数转置三线表.变量作为列,子组(strata)作为行 目录

  9. R语言使用table1包绘制(生成)三线表、使用单变量分列构建三线表、自定义overall的标签名称

    R语言使用table1包绘制(生成)三线表.使用单变量分列构建三线表.自定义overall的标签名称 目录

最新文章

  1. UWP 图片剪切旋转工具
  2. 中如何使用echart_jQueryEasyUI中的拖拽事件如何使用
  3. WCF学习笔记(三):开启net.tcp端口
  4. [jQuery原理] jQuery事件操作相关方法
  5. Java JDK 10:下一代 Java 有哪些新特性?
  6. java循环while之等差数列均值_java基础_while 循环语句的定义及用法
  7. 深入理解C语言(转载)
  8. 【Ural】1519. Formula 1
  9. python windows api截图_Winapi快速截图并打开
  10. 前端纯css 图片的模糊处理
  11. als算法参数_推荐算法之ALS
  12. 集合分页展示,补全最后一页
  13. 小飞鱼通达二开 致远OA A8+ 设计工作流实例初体验(图文)
  14. Moudle、aar新建和导入
  15. 手把手教你用JAVA实现“语音合成”功能(文字转声音)标贝科技
  16. P2071 座位安排(二分图最大匹配)
  17. html下拉 小狗,html会动的小狗狗源码
  18. 已向反垄断法妥协!谷歌应用商店抽成减半,苹果还会远吗?
  19. Automatic Targetless Extrinsic Calibration of a 3D Lidar 翻译
  20. 计算机网络实验rdt实验

热门文章

  1. thinkphp3.2+cropper上传多张图片剪切图片
  2. 8-1-Filter过滤器
  3. javascript实现下拉条联动_JavaScript gt;gt;gt; 003
  4. oracle右模糊查询不使用索引,oracle like模糊查询不能走索引?
  5. mysql从大到小排序_sql语句时间排序 sql语句按照时间排序
  6. sae java 开发环境_新浪开放平台 sae环境 java主机使用感受
  7. linux配置apache不管用,Linux中apache配置文件详解
  8. 计算机网络地址解析协议实验,计算机网络地址解析协议(ARP)实验报告.doc
  9. UI设计师必定需要了解的sketch素材
  10. 导航类网站|设计没有感觉,苦于寻找各种工具 或者资料的小伙伴收藏好哦