如何使用GGPLOT2再现从该QCC包pareto.chart情节?(How to reproduc

2019-06-23 14:15发布

我一直在使用pareto.chart功能从QCC包R和我真的很喜欢它。 现在,我想端口的所有我的图形,以利用GGPLOT2包来替代。 然而,我GGPLOT2的知识是,尽管优秀的文档很有限,所以我无法弄清楚所有细节。 基本上我想有一个情节看起来像这样

但随着GGPLOT2包,而不是制造。 用于产生图中的代码是下面列出:

    library(qcc)
    defect <- c(80, 27, 66, 94, 33)
    names(defect) <- c("price code", "schedule date", "supplier code", "contact num.", "part num.")
    pareto.chart(defect, ylab = "Error frequency", col=heat.colors(length(defect)))

有没有人有一个解决方案? 帕累托图之前已经讨论过这里 ,但结果并没有类似于我想要的任何东西。

Answer 1:

干得好:

library(ggplot2)

counts  <- c(80, 27, 66, 94, 33)
defects <- c("price code", "schedule date", "supplier code", "contact num.", "part num.")

dat <- data.frame(
  count = counts,
  defect = defects,
  stringsAsFactors=FALSE
)

dat <- dat[order(dat$count, decreasing=TRUE), ]
dat$defect <- factor(dat$defect, levels=dat$defect)
dat$cum <- cumsum(dat$count)
dat

ggplot(dat, aes(x=defect)) +
  geom_bar(aes(y=count), fill="blue", stat="identity") +
  geom_point(aes(y=cum)) +
  geom_path(aes(y=cum, group=1))



文章来源: How to reproduce the pareto.chart plot from the qcc package using ggplot2?
标签: r plot ggplot2 qcc