R可视化:另类的柱状图

介绍

方格状态的柱状图

加载R包

{r} 复制代码
knitr::opts_chunk$set(echo = TRUE, message = FALSE, warning = FALSE)
library(patternplot)
library(png)
library(ggplot2)
library(gridExtra)

rm(list = ls())
options(stringsAsFactors = F)

导入数据

{r, 复制代码
data <- read.csv(system.file("extdata", "monthlyexp.csv", package="patternplot"))

准备数据

{r, 复制代码
data <- data[which(data$Location == 'City 1'), ]
x <- factor(data$Type, c('Housing', 'Food', 'Childcare'))
y <- data$Amount
pattern.type <- c('hdashes', 'blank', 'crosshatch')
pattern.color <- c('black', 'black', 'black')
background.color <- c('white','white', 'white')
density <- c(20, 20, 10)

画图

{r, 复制代码
barp1 <- patternbar(
  data, x, y,
  group = NULL,
  ylab = 'Monthly Expenses, Dollars', 
  pattern.type = pattern.type, hjust=0.5,
  pattern.color = pattern.color, 
  background.color = background.color,pattern.line.size = c(5.5, 1, 4),
  frame.color = c('black', 'black', 'black'), 
  density = density) + 
  scale_y_continuous(limits = c(0, 2800)) +
  ggtitle('(A) Black and White with Patterns')

pattern.color <- c('black','white', 'grey20')
background.color <- c('lightgreen','lightgreen', 'lightgreen')
barp2 <- patternbar(
  data, x, y, 
  group = NULL,
  ylab = 'Monthly Expenses, Dollars', 
  pattern.type = pattern.type, hjust=0.5,
  pattern.color = pattern.color, 
  background.color = background.color,
  pattern.line.size = c(5.5, 1, 4),
  frame.color = c('black', 'black', 'black'), 
  density = density) +
  scale_y_continuous(limits = c(0, 2800)) +
  ggtitle('(B) Colors with Patterns')


grid.arrange(barp1,barp2,  nrow = 1)
相关推荐
C++ 老炮儿的技术栈1 小时前
UDP 与 TCP 的区别是什么?
开发语言·c++·windows·算法·visual studio
wgslucky1 小时前
Dubbo报错:module java.base does not “opens java.lang“ to unnamed module
java·开发语言·dubbo
whyeekkk2 小时前
python打卡第48天
开发语言·python
DougLiang3 小时前
关于easyexcel动态下拉选问题处理
java·开发语言
全职计算机毕业设计3 小时前
基于Java Web的校园失物招领平台设计与实现
java·开发语言·前端
5:004 小时前
云备份项目
linux·开发语言·c++
笨笨马甲4 小时前
Qt Quick模块功能及架构
开发语言·qt
夜晚回家5 小时前
「Java基本语法」代码格式与注释规范
java·开发语言
YYDS3145 小时前
C++动态规划-01背包
开发语言·c++·动态规划
前端页面仔5 小时前
易语言是什么?易语言能做什么?
开发语言·安全