ggQC | ggplot kvalitetskontroldiagrammer – ny udgave

GggQC-pakken er en udvidelse til kvalitetskontrol for ggplot. Brug den til at oprette XmR, XbarR, C og mange andre kontroldiagrammer, der kan tilpasses i høj grad. Yderligere funktioner til statistisk proceskontrol omfatter Shewart-overtrædelseskontrol samt kapacitetsanalyse. Hvis din proces kører problemfrit, kan du visualisere de potentielle konsekvenser af din næste procesforbedring med et Paretodiagram. Hvis du vil vide mere, skal du læse videre!

For at komme i gang med ggQC skal du installere det fra CRAN ved at køre følgende kode:

1
install.packages("ggQC")

ggQC-kontroldiagrammer

Kontroldiagrammer er en fantastisk måde at overvåge procesoutput, fremme forbedringer og evaluere målesystemer på. De typer af kontroldiagramtyper, der understøttes af ggQC, omfatter:

  • Individuelle diagrammer : mR, XmR
  • Attributdiagrammer : c, np, p, u
  • Studentized Charts: xBar.rBar, xBar.rMedian, xBar.sBar, xMedian.rBar, xMedian.rMedian
  • Spredningsdiagrammer: rBar, rMedian, sBar

Processen for opbygning af kontroldiagrammer med ggQC er enkel. Først skal du indlæse ggQC- og ggplot2-bibliotekerne. Derefter skal du indlæse dine data i R. Dine data skal være i lang form. Datasættet nedenfor giver et eksempel på data i lang form, hvis du ikke er bekendt med udtrykket.

Til sidst skal du lave dit kontroldiagram ved hjælp af standard ggplot syntaks for lag for lag og kommandoen stat_QC(). Eksempelkoden nedenfor, viser, hvordan alle disse trin samles for at lave et XmR-plot.

1234567891011121314151617181920212223242526
#### Indlæs de nødvendige bibliotekerlibrary(ggplot2)library(ggQC) #### Lav nogle demodata (indlæs din fil her i stedet)set.seed(5555)Process_Data <- data.frame( Process=rep(c("A"), each = 30), #Proces A Run_Number=c(1:30), #Run Order Value = c(rnorm(n = 30, mean = 30.5, sd = 1)) #Process A tilfældige data ) ### Lav plotXmR_Plot <- ggplot(Process_Data, aes(x = Run_Number, y = Value)) + #init ggplot geom_point() + geom_line() + # tilføj punkterne og linjerne stat_QC(method = "XmR", # specificer QC-diagrammetode auto.label = T, # Brug autolabels label.digits = 2, # Brug to cifre i etiketten show.1n2.sigma = T # Vis 1 og to sigma-linjer ) + scale_x_continuous(expand = expand_scale(mult = .15)) # Pad x-aksen ### Tegn plottet - DoneXmR_Plot

Gennem at bygge på ggplot-rammen får du en høj grad af kontrol over plotdetaljerne såsom punkter og linjer osv. Hvis du desuden ønsker at placere XmR- og mR-data på det samme plot, kan du gøre det. Du skal blot foretage flere kald til kommandoen stat_QC(), som vist nedenfor.

1234567891011121314
#### To stat_QC-opkaldXmR_Plot <- ggplot(Process_Data, aes(x = Run_Number, y = Value)) + #init ggplot geom_point() + geom_line() + #tilføj punkterne og linjerne stat_QC(method = "XmR", #specificer QC-diagrammetode auto.label = T, # Brug autolabels label.digits = 2, #Brug to cifre i etiketten show.1n2.sigma = T #Vis 1 og to sigma-linjer ) + stat_QC(method="mR") + scale_x_continuous(expand = expand_scale(mult = .15)) # Pad x-aksen ### Tegn plottet - DoneXmR_Plot

For flere eksempler på kontroldiagrammer kan du tjekke dokumentationen, HOWTO’erne og vignetterne på rcontrolcharts.com.

Violation Analysis

For at kontrollere, om der er data uden for kontrol i din proces, skal du bruge kommandoen stat_qc_violations(). Når du kører denne kommando, kontrolleres dine data i forhold til følgende 4 Shewart-overtrædelsesregler:

  • Samme side: 8 eller flere på hinanden følgende punkter på samme side
  • 1 Sigma: 4 eller flere på hinanden følgende punkter på samme side, der overstiger 1 sigma
  • 2 Sigma: 2 eller flere på hinanden følgende punkter på samme side, der overstiger 2 sigma
  • 3 Sigma: Alle punkter, der overstiger 3 sigma

Denne næste del af koden demonstrerer en analyse af overtrædelse med kommandoen stat_qc_violation() ved hjælp af procesdata fra det foregående afsnit.

12345678
#Anvender de samme data som det foregående eksempel. QC_Violations <- ggplot(Process_Data, aes(x = Run_Number, y = Value)) + #init ggplot stat_qc_violations(method = "XmR" #show.facets = 4 #hvis du kun ønsker facet 4 )QC_Violations

Når du har udført koden, bør du se et plot med 4 facetter – en for hver Shewart-regel. Hvis du kun ønsker at se den 4. facet, skal du indstille show.facets = 4. Andre indstillinger som show.facets = c(2, 4) vil kun vise 1 og 3 sigma-overtrædelser.

For vores testdata blev der ikke observeret nogen af de 4 Shewart-standardovertrædelser. Fantastisk! Dernæst vil vi se på at lave en kapacitetsanalyse med ggQC.

Kapacitetsanalyse

I de foregående afsnit lærte du, hvordan du laver et kontroldiagram med ggQC og kontrollerer for overtrædelser. Her lærer du, hvordan du laver en grundlæggende kapacitetsanalyse (Cp, Cpk, Pp, Ppk osv.). I denne forbindelse antager vi, at kunden har en nedre specifikationsgrænse (LSL) og en øvre specifikationsgrænse (USL) på henholdsvis 25 og 37. Med disse specifikationer og kommandoen stat_QC_Capability() kan du foretage en grafisk kapacitetsanalyse på blot et par enkle kodelinjer:

12345678910111213
# Bruger de samme data som i det første eksempelCapabilityAnaylsis <- ggplot(Process_Data, aes(x = Value))) + #init ggplot geom_histogram(binwidth = .75, color="purple") + #gør histogrammet stat_QC_Capability( LSL=25, USL=37, #Specificer LSL og USL show.cap.summary = c("Cp", "Cpk"), #udvalgt resumé digits = 2, #rapportere to cifre method="XmR") + #Anvend XmR methodscale_x_continuous(expand = expand_scale(mult = c(0.15,.65))) #pad X-aksen #plot grafenCapabilityAnaylsis

For at justere de kapacitetsmetrikker, der vises på plottet, skal du angive argumentet show.cap.summary med en vektor af de ønskede metrikker. De tilgængelige metrikker omfatter:

  • TOL: Tolerance in Sigma Units (USL-LSL)/sigma
  • DNS: Afstand til nærmeste specifikationsgrænse i sigma-enheder
  • Cp: Cp: Cp (Metrisk albuerum inden for prøven)
  • Cpk: Cpk: Cpk: Cpk (Metrisk centreringsmetrikken inden for prøven)
  • Pp: Pp: Pp (Metrisk albuerum mellem prøverne)
  • Ppk: Ppk: Ppk (Mellem prøvens centreringsmetrikken)
  • LCL: Nedre kontrolgrænse
  • X: Procescenter
  • UCL: Øvre kontrolgrænse
  • Sig: Sigma fra kontroldiagrammer

Rækkefølgen i vektoren er den rækkefølge, der vises på diagrammet. I dette tilfælde blev kun Cp og Cpk valgt, som vist nedenfor.

Cool! Det ser ud til, at processen er i god form. Hvis du vil se flere eksempler på kapacitetsanalyse, kan du tjekke ggQC-dokumentationen og eksemplerne på stat_QC_Capability. stat_QC_Capability er også kompatibel med ggplot-faceting. Bemærk, at XbarR-kapacitetsdiagrammer er specificeret en smule anderledes end XmR.

Pareto Analysis

Alright, så dine processer er i kontrol. Du ved imidlertid, at din proces har flaskehalse. Hvor skal du starte? En måde at hjælpe dig med at planlægge dit angreb er med en Paretoanalyse. Antag, at du har følgende data, der viser, hvor lang tid flere typiske procestrin tager.

For at generere et Pareto-diagram skal du indlæse dataene, initialisere ggplot og lade kommandoen stat_pareto() gøre resten.

12345678910111213141516171819
 #indlæs dine dataData4Pareto <- data.frame( KPI = c("Customer Service Time", "Order Fulfillment", "Order Fulfillment Time", "Order Processing Time", "Order Production Time", "Order Quality Control Time", "Rework Time", "Shipping"), Time = c(1.50, 38.50, 3.75, 23.08, 1.92, 3.58, 73.17)) #udarbejdelse af plotggplot(Data4Pareto, aes(x=KPI, y=Time)) + stat_pareto(point.color = "red", point.size = 3, line.color = "black", bars.fill = c("blue", "orange") ) + theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust=0,5)) #done

Det ser ud til, at vores næste forbedringsprojekt vil fokusere på enten forsendelse eller ordreopfyldelse. Held og lykke!

Summary

Bygge kontroldiagrammer med ggQC er hurtigt og nemt, især hvis du allerede er bekendt med ggplot. Ligesom andre ggplot-grafer understøtter ggQC-kontroldiagrammer facettering og opbygges lag for lag. Hvis du har brug for at lave et kompliceret diagram, så værsgo. Du kan tilføje så mange stat_QC-opkald, som du vil (se XbarR_Vignette). Ud over kontroldiagrammer giver ggQC dig mulighed for at køre Pareto-, kapacitets- og Shewart-overtrædelsesanalyser. Hvis du vil vide mere, kan du besøge rcontrolcharts.com

Andre nyttige links

  • En forklaring af kontroldiagramkonstanter

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.