R语言 改变ggplot2条形图中条形的空间和宽度
在这篇文章中,我们将看到如何在R中改变ggplot2条形图的空间和宽度。
为了使用ggplot2创建一个简单的条形图,首先我们必须使用 library() 函数加载 ggplot2 包。如果你还没有安装,那么你可以在你的R控制台写下以下命令来安装它。
install.packages("ggplot2")
然后我们创建一个DataFrame用于绘图。在DataFrame中,我们使用两个向量 Month & Revenue。 将这个数据框架命名为 DF。 然后我们用 ggplot() 函数将这个DataFrame和向量分配给一个绘图。我们将月份向量设置为X轴,收入设置为Y轴。然后我们通过在ggplot()函数中添加 geom_bar() 函数使这个图成为Barplot。在geom_bar()函数中,我们将 stat 参数设置为 身份 模式。默认情况下,geom_bar使用stat=”bin”。这使得每个条形图的高度等于每组的案例数。如果我们想让条形图的高度代表数据中的值,我们必须使用stat=”identity “来将一个值映射到Y审美。这里的 填充 和 颜色 参数在创建BarPlot时没有必要使用。
# Load Package
library("ggplot2")
# Create a DataFrame
DF <- data.frame(Month = c("Mar", "Apr", "May", "Jun", "Jul"),
Revenue = c(2, 9, 3, 11, 7))
# Create a Simple BarPlot using ggplot2
ggplot(DF, aes(Month, Revenue)) +
geom_bar(stat = "identity", fill = "green", color = "black")
输出
在R中使用ggplot2绘制条形图
要增加或减少BarPlot的条形图的宽度,我们只需给geom_bar()函数多分配一个 宽度 参数。我们可以根据我们的要求给出从0.00到1.00的值。有两个方面,要么我们想增加条形图的宽度并减少条形图之间的空间,要么我们想减少条形图的宽度并增加条形图之间的空间。
语法: geom_bar(stat, fill, color, width)
参数 :
- stat : 这里我们将 stat 参数设置为身份模式。当我们想用条形图的高度来表示数据中的值时,就会用到这个参数(Y审美)。
- fill : 代表条形图的颜色。
- color : 代表条形图的边界颜色。
- width : 代表条形图的宽度。
返回: ggplot2 BarPlot。
例1: 增加宽度和减少条形图之间的空间
当我们想增加条形图的宽度和减少条形图之间的空间时,我们只需要在geom_bar()函数中使用 宽度 参数。这里我们将宽度参数的值设置为0.98。你可以根据你的要求在0.00到1.00之间选择 “宽度 “参数的值。当条形图的宽度增加时,条形图之间的空间会自动减少。所有其他东西都保持原样。
geom_bar(stat = "identity", fill = "green", color = "black" **, width = 0.98** )
代码
# Load Package
library("ggplot2")
# Create DataFrame
DF <- data.frame(Month = c("Mar", "Apr", "May", "Jun", "Jul"),
Revenue = c(2, 9, 3, 11, 7))
# Create a BarPlot with increased width
# of Bars and decreased Space between Bars
ggplot(DF, aes(Month, Revenue))+
geom_bar(stat = "identity", fill = "green",
color = "black", width = 0.98)
输出
增加条形图的宽度和减少条形图之间的空间。
例2: 减少宽度和增加条形图之间的空间。
当我们想减少条形图的宽度和增加条形图之间的空间时,我们只需要使用geom_bar()函数的宽度参数。这里我们将宽度参数的值设置为0.40。你可以根据你的要求在0.00到1.00之间选择 “宽度 “参数的值。当条形图的宽度减少时,条形图之间的空间会自动增加。所有其他东西都保持原样。
geom_bar(stat = "identity", fill = "green", color = "black", width = 0.40)
代码
# Load Package
library("ggplot2")
# Create DataFrame
DF <- data.frame(Month = c("Mar", "Apr", "May", "Jun", "Jul"),
Revenue = c(2, 9, 3, 11, 7))
# Create a BarPlot with decreased width of
# Bars and increased Space between Bars
ggplot(DF, aes(Month, Revenue))+
geom_bar(stat = "identity", fill = "green",
color = "black", width = 0.40)
输出
条形图,条形图的宽度减少,条形图之间的空间增加。