Файл:MATLABSChartForPairedXBarAndSChart.png

Содержимое страницы недоступно на других языках.
Материал из Викиучебника — открытых книг для открытого мира

MATLABSChartForPairedXBarAndSChart.png(560 × 420 пкс, размер файла: 4 Кб, MIME-тип: image/png)

Краткое описание

Описание
English: A en:MATLAB-generated s en:Control chart for a process that experienced a 1.5σ drift starting at midnight. This chart is paired with an xbar chart to form an en:Xbar and s chart.
Дата
Источник Собственная работа
Автор DanielPenfield

Лицензирование

Я, владелец авторских прав на это произведение, добровольно публикую его на условиях следующей лицензии:
w:ru:Creative Commons
атрибуция распространение на тех же условиях
Этот файл доступен по лицензии Creative Commons Attribution-Share Alike 3.0 Unported.
Вы можете свободно:
  • делиться произведением – копировать, распространять и передавать данное произведение
  • создавать производные – переделывать данное произведение
При соблюдении следующих условий:
  • атрибуция – Вы должны указать авторство, предоставить ссылку на лицензию и указать, внёс ли автор какие-либо изменения. Это можно сделать любым разумным способом, но не создавая впечатление, что лицензиат поддерживает вас или использование вами данного произведения.
  • распространение на тех же условиях – Если вы изменяете, преобразуете или создаёте иное произведение на основе данного, то обязаны использовать лицензию исходного произведения или лицензию, совместимую с исходной.

Source code

en:Perl

#!/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;             # drift to simulate
my $m = 25;                  # samples in control chart setup
my $n = 12;                  # observations per sample
my $target = 100.0;          # quality characteristic target

my $hour;
my $i;
my $j;
my $minute;
my $observation;
my $setupM = $m;

#
# simulate control chart setup
#
open(SETUPCSV, ">xs_setup.csv") || die "! can't open \"xs_setup.csv\" ($!)\n";
for ($i = 1; $i <= $m; $i++) {
    for ($j = 0; $j < $n; $j++) {
        $observation = $target + random_normal();
		if ($j > 0) {
			print SETUPCSV ",";
		}
        printf SETUPCSV "%7.3f", $observation;
    }
	printf SETUPCSV "\r\n";
}
close(SETUPCSV);

#
# simulate control chart monitoring
#
open(MONITORINGCSV, ">xs_monitoring.csv") || die "! can't open \"xs_monitoring.csv\" ($!)\n";
$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;
    printf MONITORINGCSV "'%d:%02d'", $hour, $minute;
    for ($j = 0; $j < $n; $j++) {
        $observation = $target + random_normal();
        if ($i >= (0.25 * $m)) {
            if ($i < (0.75 * $m)) {
                $observation += ($drift / (0.5 * $m)) * ($i - (0.25 * $m));
            } else {
                $observation += $drift;
            }
        }
        printf MONITORINGCSV ",%7.3f", $observation;
    }
	printf MONITORINGCSV "\r\n";
}
close(MONITORINGCSV);

en:MATLAB

%
% display an s control chart in MATLAB
%
clear

%
% Phase I
%
% compute the control chart center line and control limits based on a
% process that is simulated to be in a state of statistical control
%
setupobservations = csvread('xs_setup.csv');
setupstats = controlchart(setupobservations, 'charttype', 's');

%
% Phase II
%
% read in the process observations representing the monitoring phase
%
observations = importdata('xs_monitoring.csv');

%
% first column is the time of the observation (24 hour clock)
%
halfhourlylabel = observations.rowheaders;

%
% second column consists of the observations (counts of
% nonconformances per rational subgroup)
%
monitoringobservations = observations.data;

%
% just display labels on the "on the hour" ticks
%
emptylabel = cell(size(monitoringobservations,1) - size(halfhourlylabel,1), 1);
emptylabel(:) = {''};
hourlylabel = vertcat(halfhourlylabel(2:2:end), emptylabel);

%
% plot the control chart for the monitoring phase observations
%
monitoringstats = controlchart(monitoringobservations, ...
							   'charttype', 's', ...
							   'label', halfhourlylabel.', ...
							   'mean', setupstats.mu, ...
							   'sigma', setupstats.sigma);
title('s chart for quality characteristic XXX')
xlabel('Sample')
ylabel('Standard deviation (units)')
%
% the labels supplied to controlchart() only appear when the user
% selects a plotted point with her mouse--we have to explicitly
% set labels in the X axis if we want them
%
set(gca,'XTickLabel', hourlylabel)

Краткие подписи

Добавьте однострочное описание того, что собой представляет этот файл

Элементы, изображённые на этом файле

изображённый объект

У этого свойства есть некоторое значение без элемента в

История файла

Нажмите на дату/время, чтобы увидеть версию файла от того времени.

Дата/времяМиниатюраРазмерыУчастникПримечание
текущий14:05, 22 июня 2013Миниатюра для версии от 14:05, 22 июня 2013560 × 420 (4 Кб)DanielPenfieldUser created page with UploadWizard

Нет страниц, использующих этот файл.

Глобальное использование файла

Данный файл используется в следующих вики:

Метаданные