合并qicharts和ggplot2以生成ggplot控制图

合并qicharts和ggplot2以生成ggplot控制图,r,ggplot2,charts,R,Ggplot2,Charts,好的,这将持续很长时间,但我尝试做的基本总结是将我创建的图表与我创建的控制图结合起来(至少是本质的结合/不一定是字面的结合) 首先,这是我用于图表的数据的基本结构。(底部的可复制数据) *在实际数据集中,TestNum与下一个版本一起计数,并且存在多个“案例”。请参见下面的可复制示例 以下是如何创建ggplot2图表: versions<-unique(df[order(df$TestNum), ][,2]) df$Version<-factor(df$Version, levels

好的,这将持续很长时间,但我尝试做的基本总结是将我创建的图表与我创建的控制图结合起来(至少是本质的结合/不一定是字面的结合)

首先,这是我用于图表的数据的基本结构。(底部的可复制数据)

*在实际数据集中,TestNum与下一个版本一起计数,并且存在多个“案例”。请参见下面的可复制示例

以下是如何创建ggplot2图表:

versions<-unique(df[order(df$TestNum), ][,2])
df$Version<-factor(df$Version, levels = versions)

g <- ggplot(subset(df, FileName=="File1" & Case=="Case1"), aes(x=Version, y=Value, group=FileName))
g <- g + geom_line(size=.25) + geom_point(size=1.2, colour='red') +
  ggtitle(expression(atop("TITLE", atop(italic("SUBTITLE"), "")))) +
  facet_grid(Category ~ ., scales="free", space="fixed", labeller=label_value) +
  xlab("version") + ylab("Metric Value") +
  expand_limits(y=0) +
  theme(axis.text.x=element_text(angle=45, vjust=1, hjust=1)) + 
  theme(axis.title.y=element_text(vjust=1)) + 
  theme(plot.margin=unit(c(0,0,0,0),"mm"))
g

versionsqicharts2可以为您处理刻面,只需在qic函数中使用“facets”参数即可。还请注意,该软件包现在使用ggplot2,因此您可以使用其他ggplot2命令修改图形

使用原始df,您可以尝试

qic(Value, 
x = Version,
data = df,
facets = FileName ~ Category,
chart = 'c',
main = 'File by Category',
ylab = 'Category1',
xlab = 'Version')
还没有完全测试,(在我的平板电脑上),但这应该给你一个想法。 最初的qicharts包使用分组参数来创建方面(g1和g2),新版本更直观


有关其他示例,请参见我的答案

qicharts2可以为您处理镶嵌面,只需在qic函数中使用“facets”参数即可。还请注意,该软件包现在使用ggplot2,因此您可以使用其他ggplot2命令修改图形

使用原始df,您可以尝试

qic(Value, 
x = Version,
data = df,
facets = FileName ~ Category,
chart = 'c',
main = 'File by Category',
ylab = 'Category1',
xlab = 'Version')
还没有完全测试,(在我的平板电脑上),但这应该给你一个想法。 最初的qicharts包使用分组参数来创建方面(g1和g2),新版本更直观


查看我的答案,了解更多示例

rbind df与子集,并给它一个不同的刻面标签,例如1类控件?我不清楚您是想要一个额外的刻面还是叠加到每个刻面上?@GGamba与子集叠加到每个刻面上,并给它一个不同的刻面标签,例如,1类控制?我不清楚你是想要一个额外的面还是叠加到每个面上?@GGamba叠加到每个面上
FileName <- c("File1", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File1", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File2", "File2")
Version <- c("1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.1", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.2", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3", "1.0.3")
Category <- c("Category1", "Category1", "Category1", "Category2", "Category2", "Category2", "Category3", "Category3", "Category3", "Category1", "Category1", "Category1", "Category2", "Category2", "Category2", "Category3", "Category3", "Category3", "Category1", "Category1", "Category1", "Category2", "Category2", "Category2", "Category3", "Category3", "Category3", "Category1", "Category1", "Category1", "Category2", "Category2", "Category2", "Category3", "Category3", "Category3", "Category1", "Category1", "Category1", "Category2", "Category2", "Category2", "Category3", "Category3", "Category3", "Category1", "Category1", "Category1", "Category2", "Category2", "Category2", "Category3", "Category3", "Category3","Category1", "Category1", "Category1", "Category2", "Category2", "Category2", "Category3", "Category3", "Category3", "Category1", "Category1", "Category1", "Category2", "Category2", "Category2", "Category3", "Category3", "Category3", "Category1", "Category1", "Category1", "Category2", "Category2", "Category2", "Category3", "Category3", "Category3", "Category1", "Category1", "Category1", "Category2", "Category2", "Category2", "Category3", "Category3", "Category3", "Category1", "Category1", "Category1", "Category2", "Category2", "Category2", "Category3", "Category3", "Category3", "Category1", "Category1", "Category1", "Category2", "Category2", "Category2", "Category3", "Category3", "Category3")
Value <- c(194,194,194,17,17,17,355,355,355,194,194,194,16,16,16,373,373,373,160,160,160,17,17,17,355,355,355,160,160,160,16,16,16,373,373,373,160,160,160,17,17,17,355,355,355,160,160,160,16,16,16,373,373,373,1918,1918,1918,17,17,17,355,355,355,1918,1918,1918,16,16,16,373,373,373,1918,1918,1918,17,17,17,355,355,355,1918,1918,1918,16,16,16,373,373,373,1918,1918,1918,17,17,17,355,355,355,1918,1918,1918,16,16,16,373,373,373)
TestNum <- c(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4)
RepNum <- c(1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3)
Case <- c("Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case1", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2", "Case2")
df <- data.frame(FileName,Version,Category,Value,TestNum,RepNum,Case)
qic(Value, 
x = Version,
data = df,
facets = FileName ~ Category,
chart = 'c',
main = 'File by Category',
ylab = 'Category1',
xlab = 'Version')