如何在 R 中制作具有相同条宽的分组条形图
在本文中,我们将讨论如何在 R 编程语言中制作具有相同条宽的分组条形图。
方法 1:使用 position_dodge2(preserve = “single”)
geom_col() 方法可用于向图形添加位置。 Dodging 在调整水平位置的同时保留几何的垂直位置。 position_dodge2 方法用于处理条形和矩形。
句法 :
position_dodge2(width = NULL, preserve = c("total", "single"))
参数:
- width –躲避宽度,当与单个元素的宽度不同时。
- 保留 -指示不躲避是否应保留某个位置或单个元素的所有元素的总宽度。
例子:
Python3
library("ggplot2")
library("ggforce")
# creating a data frame
df < - data.frame(col1=sample(rep(c(1, 20, 40), each=26)),
col2=sample(rep(c(1: 6), each=13))
)
# plotting the data
df % >%
ggplot(aes(col1, col2))+
geom_col(position=position_dodge2(preserve="single")) +
labs(title="Equal Bar Widths",
x="col1", y="col2")
R
# creating a table
df < - table(col1=sample(rep(c(1, 20, 40), each=26)),
col2=sample(rep(c(1: 6), each=13))
)
# plotting the data
# plotting the barplot with equal bar widths
barplot(df, xlab="col1", ylab="col2")
输出
方法 2:使用条形图方法
基础 R 中的 barplot() 方法用于从给定的输入表或矩阵构造连续的条形图。除非使用 width 参数明确指定,否则条的宽度是相等的。
barplot(data, xlab, ylab)
参数 :
- data –输入数据框
- xlab – x 轴的标签
- ylab – y 轴的标签
例子:
电阻
# creating a table
df < - table(col1=sample(rep(c(1, 20, 40), each=26)),
col2=sample(rep(c(1: 6), each=13))
)
# plotting the data
# plotting the barplot with equal bar widths
barplot(df, xlab="col1", ylab="col2")
输出