R 简明教程

R - Bar Charts

条形图以矩形条形表示数据,条形的长度与变量的值成正比。R 使用 barplot() 函数创建条形图。R 可以在条形图中绘制垂直条形和水平条形。在条形图中,每个条形都可以赋予不同的颜色。

Syntax

在 R 中创建条形图的基本语法为:

barplot(H,xlab,ylab,main, names.arg,col)

以下是所用参数的描述 -

  1. H 是条形图中使用的包含数字值的一个向量或矩阵。

  2. xlab 是 x 轴的标签。

  3. ylab 是 y 轴的标签。

  4. main 是条形图的标题。

  5. names.arg 是出现在每个条形下方名称的向量。

  6. col 用于给图表中的条形着色。

Example

仅使用输入向量和每个条形的名称创建简单的条形图。

如下脚本将在当前 R 工作目录中创建并保存条形图。

# Create the data for the chart
H <- c(7,12,28,3,41)

# Give the chart file a name
png(file = "barchart.png")

# Plot the bar chart
barplot(H)

# Save the file
dev.off()

当我们执行以上代码时,会产生以下结果 -

barchart

Bar Chart Labels, Title and Colors

可以通过添加更多参数来扩展条形图的功能。 main 参数用于添加 titlecol 参数用于给条形着色。 args.name 是一个向量,其值数与输入向量相同,用于描述每个条形的含义。

Example

如下脚本将在当前 R 工作目录中创建并保存条形图。

# Create the data for the chart
H <- c(7,12,28,3,41)
M <- c("Mar","Apr","May","Jun","Jul")

# Give the chart file a name
png(file = "barchart_months_revenue.png")

# Plot the bar chart
barplot(H,names.arg=M,xlab="Month",ylab="Revenue",col="blue",
main="Revenue chart",border="red")

# Save the file
dev.off()

当我们执行以上代码时,会产生以下结果 -

barchart months revenue

Group Bar Chart and Stacked Bar Chart

我们可以通过使用矩阵作为输入值,创建带有条形组和每个条形堆栈的条形图。

超过两个变量将表示为一个矩阵,用于创建组条形图和堆叠条形图。

# Create the input vectors.
colors = c("green","orange","brown")
months <- c("Mar","Apr","May","Jun","Jul")
regions <- c("East","West","North")

# Create the matrix of the values.
Values <- matrix(c(2,9,3,11,9,4,8,7,3,12,5,2,8,10,11), nrow = 3, ncol = 5, byrow = TRUE)

# Give the chart file a name
png(file = "barchart_stacked.png")

# Create the bar chart
barplot(Values, main = "total revenue", names.arg = months, xlab = "month", ylab = "revenue", col = colors)

# Add the legend to the chart
legend("topleft", regions, cex = 1.3, fill = colors)

# Save the file
dev.off()
barchart stacked