Zum Inhalt springen

Datei:Np control chart.svg

Aus MOOCsWiki Staging
Originaldatei (SVG-Datei, Basisgröße: 630 × 629 Pixel, Dateigröße: 38 KB)

Diese Datei stammt aus Wikimedia Commons und kann von anderen Projekten verwendet werden. Die Beschreibung von deren Dateibeschreibungsseite wird unten angezeigt.

Beschreibung

Beschreibung
English: Example np-chart for a process that experienced a 1.5σ drift starting at midnight.
Datum
Quelle Eigenes Werk
Urheber DanielPenfield
SVG‑Erstellung
InfoField
 Der SVG-Code ist valide.
 Diese Vektorgrafik wurde mit Inkscape erstellt.
  Diese Datei verwendet Text-Einbettung, die mit einem Texteditor leicht übersetzbar ist.

Creation technique

  1. Simulate process observations using perl, output to file.
  2. Read file into R, use qcc package to render control chart.
  3. Save to PDF.
  4. Import into Inkscape, save to SVG.

Quellcode

Logo von: Perl – Programmiersprache
Logo von: Perl – Programmiersprache
Diese Mediendatei wurde erstellt mit Perl (Programmiersprache)
Hier ist der Quellcode, der zum Erstellen dieser Datei verwendet wurde.

Deutsch  English  +/−

#!/usr/bin/perl -w

use strict;
use Math::Random;

my %shiftSchedule = (
    "first" =>  { "start" =>  6.00, "end" => 14.00 },
    "second" => { "start" => 14.00, "end" => 22.00 },
    "third" =>  { "start" => 22.00, "end" =>  6.00 }
);
my $shift = "third";         # shift to monitor
my $inspectionRate = 1 / 2;  # every 1/2 hour
my $drift = 1.5;             # sigma drift to simulate
my $m = 25;                  # samples in control chart setup
my $target = 0.10;           # fraction nonconforming target

my $p = $target;
my $n =                      # observations per sample
    int((9 * $p * (1 - $p)) / ($drift * $p * $drift * $p) + 0.5);
my $hour;
my $i;
my $minute;
my $observation;
my $setupM = $m;

print "timestamp sample sampleSize observation phase\r\n";

for ($i = 1; $i <= $m; $i++) {
    $observation = Math::Random::random_binomial(1, $n, $p);
    printf "     0:00 %6d     %6d          %2d setup\r\n", $i, $n, $observation;
}

$m = $shiftSchedule{$shift}{"end"} - $shiftSchedule{$shift}{"start"};
if ($m < 0) {
    $m += 24;
}
$m /= $inspectionRate;
for ($i = 1; $i <= $m; $i++) {
    $hour = int($i * $inspectionRate + $shiftSchedule{$shift}{"start"});
    if ($hour >= 24) {
	$hour -= 24;
    }
    $minute = ($i & 0x1) ? (60 * $inspectionRate) : 0;
    if ($i >= (0.25 * $m)) {
	if ($i < (0.75 * $m)) {
	    $p = $target + ($drift * $target / (0.5 * $m)) * ($i - (0.25 * $m));
	} else {
	    $p = $target + $drift * $target;
	}
    }
    $observation = Math::Random::random_binomial(1, $n, $p);
    printf "    %2d:%02d %6d     %6d          %2d monitoring\r\n", $hour, $minute, $setupM + $i, $n, $observation;
}


Quellcode

Logo von: R – Programmiersprache für statistisches Rechnen
Logo von: R – Programmiersprache für statistisches Rechnen
Diese Mediendatei wurde erstellt mit R (Programmiersprache für statistisches Rechnen)
Hier ist der Quellcode, der zum Erstellen dieser Datei verwendet wurde.

Deutsch  English  +/−

observations <- read.table("thirdshiftfractionnonconforming.txt", TRUE)

require(qcc)
attach(observations)

# identify "observation" and "sample" columns as providing the
# observations and sample numbers
observation <- qcc.groups(observation, sample)

# number of samples in phase I ("setup")
m = length(phase[phase == "setup"]);

# we do not plot the phase I ("setup") data, so just provide a filler
setupTimestamps <- rep.int(c(""), m)

# extract the timestamps to display for the phase II ("monitoring") data
monitoringTimestamps <- as.character(timestamp[phase == "monitoring"])
# reduce to one per hour
for (i in 1:length(monitoringTimestamps)) {
    minutes <- strsplit(monitoringTimestamps[[i]], ":")[[1]][[2]]
    if (minutes != "00") monitoringTimestamps[[i]] <- ""
}

# extract the sample sizes
setupSampleSizes <- as.numeric(sampleSize[phase == "setup"])
monitoringSampleSizes <- as.numeric(sampleSize[phase == "monitoring"])

# plot np chart
obj <- qcc(data = observation[1:m],
           type = "np",
	   sizes = setupSampleSizes,
	   newdata = observation[-(1:m)],
	   newsizes = monitoringSampleSizes,
	   labels = setupTimestamps,
	   newlabels = monitoringTimestamps,
	   axes.las = 3,
	   chart.all = FALSE,
	   title = "np chart for quality characteristic XXX",
	   xlab = "Sample",
	   ylab = "Number nonconforming")

Lizenz

DanielPenfield, der Urheberrechtsinhaber dieses Werkes, veröffentlicht es hiermit unter der folgenden Lizenz:
w:de:Creative Commons
Namensnennung Weitergabe unter gleichen Bedingungen
Namensnennung:
Dieses Werk darf von dir
  • verbreitet werden – vervielfältigt, verbreitet und öffentlich zugänglich gemacht werden
  • neu zusammengestellt werden – abgewandelt und bearbeitet werden
Zu den folgenden Bedingungen:
  • Namensnennung – Du musst angemessene Urheber- und Rechteangaben machen, einen Link zur Lizenz beifügen und angeben, ob Änderungen vorgenommen wurden. Diese Angaben dürfen in jeder angemessenen Art und Weise gemacht werden, allerdings nicht so, dass der Eindruck entsteht, der Lizenzgeber unterstütze gerade dich oder deine Nutzung besonders.
  • Weitergabe unter gleichen Bedingungen – Wenn du das Material wiedermischst, transformierst oder darauf aufbaust, musst du deine Beiträge unter der gleichen oder einer kompatiblen Lizenz wie das Original verbreiten.
GNU head Es ist erlaubt, die Datei unter den Bedingungen der GNU-Lizenz für freie Dokumentation, Version 1.2 oder einer späteren Version, veröffentlicht von der Free Software Foundation, zu kopieren, zu verbreiten und/oder zu modifizieren; es gibt keine unveränderlichen Abschnitte, keinen vorderen und keinen hinteren Umschlagtext.

Der vollständige Text der Lizenz ist im Kapitel GNU-Lizenz für freie Dokumentation verfügbar.

Du darfst es unter einer der obigen Lizenzen deiner Wahl verwenden.

Kurzbeschreibungen

Ergänze eine einzeilige Erklärung, was diese Datei darstellt.

In dieser Datei abgebildete Objekte

Motiv

Dateiversionen

Klicke auf einen Zeitpunkt, um diese Version zu laden.

Version vomVorschaubildMaßeBenutzerKommentar
aktuell23:48, 16. Jan. 2010Vorschaubild der Version vom 23:48, 16. Jan. 2010630 × 629 (38 KB)wikimediacommons>DanielPenfield{{Information |Description={{en|1=Example en:np-chart for a process that experienced a 1.5σ drift starting at midnight.}} |Source={{own}} |Author=DanielPenfield |Date=2010-01-16 |Permission= |other_versions= }} [[Category:Co

Die folgende Seite verwendet diese Datei:

Metadaten