R语言 帕累托图

R语言 帕累托图

在帕累托图中,右纵轴用于累积频率,左纵轴表示频率。它们基本上使用了帕累托原则,即80%的效果是由系统中20%的原因产生的。

在这里,我们有一个条形图,表示事件在不同类别中发生的频率,以递减的方式(从左到右),叠加的线图表示发生的累积百分比。

语法:

pareto.chart(x, ylab = "Frequency", ylab2 = "Cumulative Percentage", xlab, cumperc = seq(0, 100, by = 25), ylim, main, col = heat.color(length(x))

参数:

x: 一个值的向量。names(x)用于标记条形图。

ylab: 一个字符串,用于指定y轴的标签。

ylab2: 一个字符串,用于指定右侧第二个y轴的标签。

xlab: 一个字符串,用于指定x轴的标签。

cumperc: 一个百分比值的向量,用作右侧第二条y轴的刻度线。

ylim: 一个数字向量,指定y轴的极限值。

main: 一个字符串,指定显示在绘图上的主标题。

col: 一个颜色值,一个颜色向量,或者一个条形调色板。关于颜色和调色板,请参见帮助。

绘制帕累托图

以下是绘制帕累托图的必要步骤。

  • 取一个向量(defect <- c(Values…)),其中包含不同类别的计数值。
  • 取一个向量(names(defect) <- c(Values…)),其中包含指定不同类别名称的字符串值
  • 这个向量 “缺陷 “用pareto.chart()绘制。

例1 :

# x axis numbers
defect <- c(27, 789, 9, 65, 12, 109, 30, 15, 45, 621)
  
# x axis titles
names(defect) <- c("Too noisy", "Overpriced", "Food not fresh", 
                   "Food is tasteless", "Unfriendly staff",
                   "Wait time", "Not clean", "Food is too salty", 
                   "No atmosphere", "Small portions") 
  
pareto.chart(defect, xlab = "Categories", # x-axis label
                     ylab="Frequency",  # label y left
  
# colors of the chart             
col=heat.colors(length(defect)), 
  
# ranges of the percentages at the right
cumperc = seq(0, 100, by = 20),  
  
# label y right
ylab2 = "Cumulative Percentage", 
  
# title of the chart
main = "Complaints of different customers" 
)

输出 :

R - 帕累托图

在这里的图表中,橙色的帕累托线表明(789+621)/1722,即大约80%的投诉来自10分之2=20%的投诉类型(价格过高和份量过少)。

例2 :

# x axis numbers
defect <- c(7000, 4000, 5200, 3000, 800)
  
# x axis titles
names(defect) <- c("Class A", "Class B", "Class C",
                   "Class D", "Class E") 
  
pareto.chart(defect, xlab = "Categories",
                     ylab="Frequency",
             col=heat.colors(length(defect)),
             cumperc = seq(0, 100, by = 10),
             ylab2 = "Cumulative Percentage",
             main = "Defects"
)

输出:

R - 帕累托图

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程