R语言分组画条形图——qplot

R语言可视化 专栏收录该内容
21 篇文章 6 订阅

00引言

R语言对于统计图的绘制可以说是非常有效了,本文使用ggplot2包里的qplot函数绘制条形图。大家一块学习使用。那个对ggplot2语法不了解的同学也可以前来参观。因为该案例不会涉及太多的语法。

1、数据简介

本文的数据来自狗熊会熊大给熊粉的公开数据,关于网络暴力的调查问卷一份。尽管像spss、sas等统计软件等对调查问卷的分组已经很优秀了,但是作为R的忠实粉还是想用ggplot2来实现,废话不多说上案例。
具体的数据介绍这里就不贴出来了,贴上链接用到自取。

2、案例

2.1变量展示

虽然具体的数据不展示,但是用到的数据集合还是需要介绍以下的。本文主要对性别、生源地、对网络BL的认知三个问题11变量进行可视化(不要问我为啥11个变量,去做个问卷就知道啦)

项目Value
★ 性别分类变量,1代表男,2代表女;
★ 生源地分类变量,分为乡镇、县区、市区3个类别,其中:1代表乡镇,2代表县区,3代表市区;
★ 对网络BL的认知分类变量,了解人们对网络BL的认识;其中:1代表MM他人,2代表未经当事人同意私自在网络上公布他人信息的行为,3代表发布未经证实的视频和图片、SDYL,4代表对他人恶意DH,5代表RRSS,6代表其他;

2.2数据读入与整理

# 数据读入并改名字
Data <- read.csv("data.csv", header = T)[,-1]
colnames(Data) <- paste0("x", 1:34)
# 取出数据
da = Data[,6:11]
n <- dim(da)[1];p = dim(da)[2]
# 生成选项
option <- as.factor(rep(LETTERS[1:p], each = n))
# 拼接六个数据选项数
nda <- c()
for(i in 1:p){
  nda <- c(nda, da[,i])
}
# 构造数据框
da = data.frame(dat = nda,选项 = option, 性别 = as.factor(Data[,1]),生源地 = as.factor(Data[,3]))

下面看一眼整理好的数据框

> head(da,10)
   dat 选项 性别 生源地
1    0    A    2      3
2    1    A    2      2
3    1    A    2      1
4    1    A    1      3
5    1    A    2      2
6    0    A    2      3
7    1    A    1      3
8    0    A    2      3
9    0    A    2      1
10   1    A    2      1
> tail(da,6)
    dat 选项 性别 生源地
811   0    F    1      3
812   0    F    1      2
813   1    F    1      1
814   1    F    1      2
815   0    F    2      2
816   0    F    1      1

数据属性也搂一眼

> dim(da)
[1] 816   4
> class(da)
[1] "data.frame"
> dim(da)
[1] 816   4

2.3画图

qplot(interaction(dat, 选项), data = da, geom = "bar", fill = n,main = "性别")

在这里插入图片描述

qplot(interaction(dat, 选项), data = da, geom = "bar", fill = q,main = "生源地")

在这里插入图片描述

qplot(interaction(dat, 选项), data = da, geom = "bar", fill = interaction(n,q),main = "性别和生源地")

在这里插入图片描述

2.4居中标题

下面就不上代码了,直接贴图
在这里插入图片描述

2.5全家福

在这里插入图片描述

  • 9
    点赞
  • 2
    评论
  • 18
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 像素格子 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值