qesuite 1.0.21 → 1.0.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -967,7 +967,13 @@ declare function AnovaTableTwoWay(data: GRRData, interaction: boolean): any;
967
967
  * @param tolerance The total tolerance spread = (USL - LSL)
968
968
  * @param referenceValue The value used to evaluate bias. Generally historical mean or mean from other measurement equipment.
969
969
  */
970
- declare function G1(data: any, tolerance: number, referenceValue: number): {
970
+ declare function G1(data: any, tolerance: number, referenceValue?: number): {
971
+ Cg: number;
972
+ Cgk?: undefined;
973
+ bias?: undefined;
974
+ t?: undefined;
975
+ p?: undefined;
976
+ } | {
971
977
  Cg: number;
972
978
  Cgk: number;
973
979
  bias: number;
@@ -1050,7 +1056,16 @@ declare function VarianceComponents(ANOVA: any, data: GRRData): {
1050
1056
  Contribution: number;
1051
1057
  };
1052
1058
  };
1053
- declare function G1Graphs(data: any, tolerance: number, referenceValue: number): {
1059
+ declare function G1Graphs(data: any, tolerance: number, referenceValue?: number): {
1060
+ charts: {
1061
+ RunChart: HTMLCanvasElement;
1062
+ };
1063
+ Cg: number;
1064
+ Cgk?: undefined;
1065
+ bias?: undefined;
1066
+ t?: undefined;
1067
+ p?: undefined;
1068
+ } | {
1054
1069
  charts: {
1055
1070
  RunChart: HTMLCanvasElement;
1056
1071
  };
package/dist/index.d.ts CHANGED
@@ -967,7 +967,13 @@ declare function AnovaTableTwoWay(data: GRRData, interaction: boolean): any;
967
967
  * @param tolerance The total tolerance spread = (USL - LSL)
968
968
  * @param referenceValue The value used to evaluate bias. Generally historical mean or mean from other measurement equipment.
969
969
  */
970
- declare function G1(data: any, tolerance: number, referenceValue: number): {
970
+ declare function G1(data: any, tolerance: number, referenceValue?: number): {
971
+ Cg: number;
972
+ Cgk?: undefined;
973
+ bias?: undefined;
974
+ t?: undefined;
975
+ p?: undefined;
976
+ } | {
971
977
  Cg: number;
972
978
  Cgk: number;
973
979
  bias: number;
@@ -1050,7 +1056,16 @@ declare function VarianceComponents(ANOVA: any, data: GRRData): {
1050
1056
  Contribution: number;
1051
1057
  };
1052
1058
  };
1053
- declare function G1Graphs(data: any, tolerance: number, referenceValue: number): {
1059
+ declare function G1Graphs(data: any, tolerance: number, referenceValue?: number): {
1060
+ charts: {
1061
+ RunChart: HTMLCanvasElement;
1062
+ };
1063
+ Cg: number;
1064
+ Cgk?: undefined;
1065
+ bias?: undefined;
1066
+ t?: undefined;
1067
+ p?: undefined;
1068
+ } | {
1054
1069
  charts: {
1055
1070
  RunChart: HTMLCanvasElement;
1056
1071
  };
package/dist/index.js CHANGED
@@ -2718,7 +2718,7 @@ function PlotPoint(ctx, value, dataSetDisplay, chartSettings) {
2718
2718
  };
2719
2719
  let x = ConvertToCanvasPt(value.x, chartSettings.axis.x.min, chartSettings.axis.x.max, chartSettings.width - chartSettings.margins.left - chartSettings.margins.right - padding.left - padding.right, chartSettings.axis.x);
2720
2720
  let y = ConvertToCanvasPt(value.y, chartSettings.axis.y.max, chartSettings.axis.y.min, chartSettings.height - chartSettings.margins.top - chartSettings.margins.bottom - padding.top - padding.bottom, chartSettings.axis.y);
2721
- if (y >= 0 && y <= chartSettings.height - chartSettings.margins.bottom && x >= 0 && x <= chartSettings.width - chartSettings.margins.right) {
2721
+ if (y >= 0 && y <= chartSettings.height - chartSettings.margins.bottom - chartSettings.margins.top && x >= 0 && x <= chartSettings.width - chartSettings.margins.right - chartSettings.margins.left) {
2722
2722
  DrawPolygon(ctx, shape, x + chartSettings.margins.left + padding.left, y + chartSettings.margins.top + padding.top, shapeRadius);
2723
2723
  }
2724
2724
  ctx.fill();
@@ -2762,15 +2762,28 @@ function PlotLine(ctx, dataSet, chartSettings) {
2762
2762
  top: ((_f = chartSettings.axis.y.padding) == null ? void 0 : _f.top) ? (_g = chartSettings.axis.y.padding) == null ? void 0 : _g.top : 0,
2763
2763
  bottom: ((_h = chartSettings.axis.y.padding) == null ? void 0 : _h.bottom) ? (_i = chartSettings.axis.y.padding) == null ? void 0 : _i.bottom : 0
2764
2764
  };
2765
+ let newPath = true;
2765
2766
  if (((_j = dataSet.line) == null ? void 0 : _j.type) === "straight") {
2766
- let x = ConvertToCanvasPt(dataSet.values[0].x, chartSettings.axis.x.min, chartSettings.axis.x.max, chartSettings.width - chartSettings.margins.left - chartSettings.margins.right - padding.left - padding.right, chartSettings.axis.x);
2767
- let y = ConvertToCanvasPt(dataSet.values[0].y, chartSettings.axis.y.max, chartSettings.axis.y.min, chartSettings.height - chartSettings.margins.top - chartSettings.margins.bottom - padding.top - padding.bottom, chartSettings.axis.y);
2768
- ctx.moveTo(x + chartSettings.margins.left + padding.left, y + chartSettings.margins.top + padding.top);
2769
- dataSet.values.forEach((value) => {
2770
- let x2 = ConvertToCanvasPt(value.x, chartSettings.axis.x.min, chartSettings.axis.x.max, chartSettings.width - chartSettings.margins.left - chartSettings.margins.right - padding.left - padding.right, chartSettings.axis.x);
2771
- let y2 = ConvertToCanvasPt(value.y, chartSettings.axis.y.max, chartSettings.axis.y.min, chartSettings.height - chartSettings.margins.top - chartSettings.margins.bottom - padding.top - padding.bottom, chartSettings.axis.y);
2772
- if (y2 >= 0 && y2 <= chartSettings.height - chartSettings.margins.bottom && x2 >= 0 && x2 <= chartSettings.width - chartSettings.margins.right) {
2773
- ctx.lineTo(x2 + chartSettings.margins.left + padding.left, y2 + chartSettings.margins.top + padding.top);
2767
+ dataSet.values.forEach((value, i) => {
2768
+ let x = ConvertToCanvasPt(value.x, chartSettings.axis.x.min, chartSettings.axis.x.max, chartSettings.width - chartSettings.margins.left - chartSettings.margins.right - padding.left - padding.right, chartSettings.axis.x);
2769
+ let y = ConvertToCanvasPt(value.y, chartSettings.axis.y.max, chartSettings.axis.y.min, chartSettings.height - chartSettings.margins.top - chartSettings.margins.bottom - padding.top - padding.bottom, chartSettings.axis.y);
2770
+ if (y < 0) {
2771
+ y = 0;
2772
+ }
2773
+ if (y > chartSettings.height - chartSettings.margins.bottom - chartSettings.margins.top) {
2774
+ y = chartSettings.height - chartSettings.margins.bottom - chartSettings.margins.top;
2775
+ }
2776
+ if (x < 0) {
2777
+ x = 0;
2778
+ }
2779
+ if (x > chartSettings.width - chartSettings.margins.right - chartSettings.margins.left) {
2780
+ x = chartSettings.width - chartSettings.margins.right - chartSettings.margins.left;
2781
+ }
2782
+ if (newPath) {
2783
+ ctx.moveTo(x + chartSettings.margins.left + padding.left, y + chartSettings.margins.top + padding.top);
2784
+ newPath = false;
2785
+ } else {
2786
+ ctx.lineTo(x + chartSettings.margins.left + padding.left, y + chartSettings.margins.top + padding.top);
2774
2787
  }
2775
2788
  });
2776
2789
  }
@@ -3387,10 +3400,15 @@ function AnovaTableTwoWay(data, interaction) {
3387
3400
  function G1(data, tolerance, referenceValue) {
3388
3401
  let K = 20;
3389
3402
  let L = 6;
3390
- let Xm = referenceValue;
3391
3403
  let XbarG = Mean(data);
3392
3404
  let s = StDev.S(data);
3393
3405
  let Cg = K / 100 * tolerance / (L * s);
3406
+ if (!referenceValue) {
3407
+ return {
3408
+ Cg
3409
+ };
3410
+ }
3411
+ let Xm = referenceValue;
3394
3412
  let Cgk = (K / 200 * tolerance - Math.abs(XbarG - Xm)) / (L / 2 * s);
3395
3413
  let Bias = XbarG - referenceValue;
3396
3414
  let T = Math.sqrt(data.length) * Math.abs(Bias) / s;
@@ -3587,6 +3605,9 @@ function VarianceComponents(ANOVA, data) {
3587
3605
  }
3588
3606
  function G1Graphs(data, tolerance, referenceValue) {
3589
3607
  let g1Results = G1(data, tolerance, referenceValue);
3608
+ if (!referenceValue) {
3609
+ referenceValue = Mean(data);
3610
+ }
3590
3611
  let dataset = new DataSet(data.map((d, i) => {
3591
3612
  return new Point(i + 1, d);
3592
3613
  }));
package/dist/index.mjs CHANGED
@@ -2631,7 +2631,7 @@ function PlotPoint(ctx, value, dataSetDisplay, chartSettings) {
2631
2631
  };
2632
2632
  let x = ConvertToCanvasPt(value.x, chartSettings.axis.x.min, chartSettings.axis.x.max, chartSettings.width - chartSettings.margins.left - chartSettings.margins.right - padding.left - padding.right, chartSettings.axis.x);
2633
2633
  let y = ConvertToCanvasPt(value.y, chartSettings.axis.y.max, chartSettings.axis.y.min, chartSettings.height - chartSettings.margins.top - chartSettings.margins.bottom - padding.top - padding.bottom, chartSettings.axis.y);
2634
- if (y >= 0 && y <= chartSettings.height - chartSettings.margins.bottom && x >= 0 && x <= chartSettings.width - chartSettings.margins.right) {
2634
+ if (y >= 0 && y <= chartSettings.height - chartSettings.margins.bottom - chartSettings.margins.top && x >= 0 && x <= chartSettings.width - chartSettings.margins.right - chartSettings.margins.left) {
2635
2635
  DrawPolygon(ctx, shape, x + chartSettings.margins.left + padding.left, y + chartSettings.margins.top + padding.top, shapeRadius);
2636
2636
  }
2637
2637
  ctx.fill();
@@ -2675,15 +2675,28 @@ function PlotLine(ctx, dataSet, chartSettings) {
2675
2675
  top: ((_f = chartSettings.axis.y.padding) == null ? void 0 : _f.top) ? (_g = chartSettings.axis.y.padding) == null ? void 0 : _g.top : 0,
2676
2676
  bottom: ((_h = chartSettings.axis.y.padding) == null ? void 0 : _h.bottom) ? (_i = chartSettings.axis.y.padding) == null ? void 0 : _i.bottom : 0
2677
2677
  };
2678
+ let newPath = true;
2678
2679
  if (((_j = dataSet.line) == null ? void 0 : _j.type) === "straight") {
2679
- let x = ConvertToCanvasPt(dataSet.values[0].x, chartSettings.axis.x.min, chartSettings.axis.x.max, chartSettings.width - chartSettings.margins.left - chartSettings.margins.right - padding.left - padding.right, chartSettings.axis.x);
2680
- let y = ConvertToCanvasPt(dataSet.values[0].y, chartSettings.axis.y.max, chartSettings.axis.y.min, chartSettings.height - chartSettings.margins.top - chartSettings.margins.bottom - padding.top - padding.bottom, chartSettings.axis.y);
2681
- ctx.moveTo(x + chartSettings.margins.left + padding.left, y + chartSettings.margins.top + padding.top);
2682
- dataSet.values.forEach((value) => {
2683
- let x2 = ConvertToCanvasPt(value.x, chartSettings.axis.x.min, chartSettings.axis.x.max, chartSettings.width - chartSettings.margins.left - chartSettings.margins.right - padding.left - padding.right, chartSettings.axis.x);
2684
- let y2 = ConvertToCanvasPt(value.y, chartSettings.axis.y.max, chartSettings.axis.y.min, chartSettings.height - chartSettings.margins.top - chartSettings.margins.bottom - padding.top - padding.bottom, chartSettings.axis.y);
2685
- if (y2 >= 0 && y2 <= chartSettings.height - chartSettings.margins.bottom && x2 >= 0 && x2 <= chartSettings.width - chartSettings.margins.right) {
2686
- ctx.lineTo(x2 + chartSettings.margins.left + padding.left, y2 + chartSettings.margins.top + padding.top);
2680
+ dataSet.values.forEach((value, i) => {
2681
+ let x = ConvertToCanvasPt(value.x, chartSettings.axis.x.min, chartSettings.axis.x.max, chartSettings.width - chartSettings.margins.left - chartSettings.margins.right - padding.left - padding.right, chartSettings.axis.x);
2682
+ let y = ConvertToCanvasPt(value.y, chartSettings.axis.y.max, chartSettings.axis.y.min, chartSettings.height - chartSettings.margins.top - chartSettings.margins.bottom - padding.top - padding.bottom, chartSettings.axis.y);
2683
+ if (y < 0) {
2684
+ y = 0;
2685
+ }
2686
+ if (y > chartSettings.height - chartSettings.margins.bottom - chartSettings.margins.top) {
2687
+ y = chartSettings.height - chartSettings.margins.bottom - chartSettings.margins.top;
2688
+ }
2689
+ if (x < 0) {
2690
+ x = 0;
2691
+ }
2692
+ if (x > chartSettings.width - chartSettings.margins.right - chartSettings.margins.left) {
2693
+ x = chartSettings.width - chartSettings.margins.right - chartSettings.margins.left;
2694
+ }
2695
+ if (newPath) {
2696
+ ctx.moveTo(x + chartSettings.margins.left + padding.left, y + chartSettings.margins.top + padding.top);
2697
+ newPath = false;
2698
+ } else {
2699
+ ctx.lineTo(x + chartSettings.margins.left + padding.left, y + chartSettings.margins.top + padding.top);
2687
2700
  }
2688
2701
  });
2689
2702
  }
@@ -3300,10 +3313,15 @@ function AnovaTableTwoWay(data, interaction) {
3300
3313
  function G1(data, tolerance, referenceValue) {
3301
3314
  let K = 20;
3302
3315
  let L = 6;
3303
- let Xm = referenceValue;
3304
3316
  let XbarG = Mean(data);
3305
3317
  let s = StDev.S(data);
3306
3318
  let Cg = K / 100 * tolerance / (L * s);
3319
+ if (!referenceValue) {
3320
+ return {
3321
+ Cg
3322
+ };
3323
+ }
3324
+ let Xm = referenceValue;
3307
3325
  let Cgk = (K / 200 * tolerance - Math.abs(XbarG - Xm)) / (L / 2 * s);
3308
3326
  let Bias = XbarG - referenceValue;
3309
3327
  let T = Math.sqrt(data.length) * Math.abs(Bias) / s;
@@ -3500,6 +3518,9 @@ function VarianceComponents(ANOVA, data) {
3500
3518
  }
3501
3519
  function G1Graphs(data, tolerance, referenceValue) {
3502
3520
  let g1Results = G1(data, tolerance, referenceValue);
3521
+ if (!referenceValue) {
3522
+ referenceValue = Mean(data);
3523
+ }
3503
3524
  let dataset = new DataSet(data.map((d, i) => {
3504
3525
  return new Point(i + 1, d);
3505
3526
  }));
package/index.ts CHANGED
@@ -3049,7 +3049,7 @@ function PlotPoint(ctx: any, value: Point, dataSetDisplay: CanvasDrawSettings, c
3049
3049
 
3050
3050
  let x = ConvertToCanvasPt(value.x, chartSettings.axis.x.min, chartSettings.axis.x.max, chartSettings.width - chartSettings.margins.left - chartSettings.margins.right - padding.left - padding.right, chartSettings.axis.x);
3051
3051
  let y = ConvertToCanvasPt(value.y, chartSettings.axis.y.max, chartSettings.axis.y.min, chartSettings.height - chartSettings.margins.top - chartSettings.margins.bottom - padding.top - padding.bottom, chartSettings.axis.y);
3052
- if(y >= 0 && y <= chartSettings.height - chartSettings.margins.bottom && x >= 0 && x <= chartSettings.width - chartSettings.margins.right){
3052
+ if(y >= 0 && y <= chartSettings.height - chartSettings.margins.bottom - chartSettings.margins.top && x >= 0 && x <= chartSettings.width - chartSettings.margins.right - chartSettings.margins.left){
3053
3053
  DrawPolygon(ctx, shape, x + chartSettings.margins.left + padding.left, y + chartSettings.margins.top + padding.top, shapeRadius);
3054
3054
  }
3055
3055
  ctx.fill();
@@ -3097,16 +3097,30 @@ function PlotLine(ctx: any, dataSet: DataSet, chartSettings: ChartSettings){
3097
3097
  bottom: (chartSettings.axis.y.padding?.bottom ? chartSettings.axis.y.padding?.bottom : 0)
3098
3098
  }
3099
3099
 
3100
+ let newPath = true;
3101
+
3100
3102
  if(dataSet.line?.type === 'straight'){
3101
- let x = ConvertToCanvasPt(dataSet.values[0].x, chartSettings.axis.x.min, chartSettings.axis.x.max, chartSettings.width - chartSettings.margins.left - chartSettings.margins.right - padding.left - padding.right, chartSettings.axis.x);
3102
- let y = ConvertToCanvasPt(dataSet.values[0].y, chartSettings.axis.y.max, chartSettings.axis.y.min, chartSettings.height - chartSettings.margins.top - chartSettings.margins.bottom - padding.top - padding.bottom, chartSettings.axis.y);
3103
-
3104
- ctx.moveTo(x + chartSettings.margins.left + padding.left, y + chartSettings.margins.top + padding.top)
3105
- dataSet.values.forEach(value => {
3103
+ dataSet.values.forEach((value,i) => {
3106
3104
  let x = ConvertToCanvasPt(value.x, chartSettings.axis.x.min, chartSettings.axis.x.max, chartSettings.width - chartSettings.margins.left - chartSettings.margins.right - padding.left - padding.right, chartSettings.axis.x);
3107
3105
  let y = ConvertToCanvasPt(value.y, chartSettings.axis.y.max, chartSettings.axis.y.min, chartSettings.height - chartSettings.margins.top - chartSettings.margins.bottom - padding.top - padding.bottom, chartSettings.axis.y);
3108
- if(y >= 0 && y <= chartSettings.height - chartSettings.margins.bottom && x >= 0 && x <= chartSettings.width - chartSettings.margins.right){
3109
- ctx.lineTo(x + chartSettings.margins.left + padding.left, y + chartSettings.margins.top + padding.top);
3106
+
3107
+ if(y < 0){
3108
+ y = 0
3109
+ }
3110
+ if(y > chartSettings.height - chartSettings.margins.bottom - chartSettings.margins.top){
3111
+ y = chartSettings.height - chartSettings.margins.bottom - chartSettings.margins.top;
3112
+ }
3113
+ if(x < 0){
3114
+ x = 0;
3115
+ }
3116
+ if(x > chartSettings.width - chartSettings.margins.right - chartSettings.margins.left){
3117
+ x = chartSettings.width - chartSettings.margins.right - chartSettings.margins.left
3118
+ }
3119
+ if(newPath){
3120
+ ctx.moveTo(x + chartSettings.margins.left + padding.left, y + chartSettings.margins.top + padding.top);
3121
+ newPath = false;
3122
+ }else{
3123
+ ctx.lineTo(x + chartSettings.margins.left + padding.left, y + chartSettings.margins.top + padding.top);
3110
3124
  }
3111
3125
  })
3112
3126
  }
@@ -3943,16 +3957,21 @@ export function AnovaTableTwoWay(data: GRRData, interaction: boolean){
3943
3957
  * @param tolerance The total tolerance spread = (USL - LSL)
3944
3958
  * @param referenceValue The value used to evaluate bias. Generally historical mean or mean from other measurement equipment.
3945
3959
  */
3946
- export function G1(data: any, tolerance: number, referenceValue: number){
3960
+ export function G1(data: any, tolerance: number, referenceValue?: number){
3947
3961
  let K = 20 // % of tolerance; DEFAULT: 20
3948
3962
  let L = 6 // # Standard Deviations represent process spread; DEFAULT: 6
3949
3963
 
3950
- let Xm = referenceValue;
3951
-
3952
3964
  let XbarG = Mean(data);
3953
3965
  let s = StDev.S(data);
3954
3966
 
3955
3967
  let Cg = ((K/100)*tolerance)/(L*s);
3968
+ if(!referenceValue){
3969
+ return {
3970
+ Cg: Cg
3971
+ }
3972
+ }
3973
+
3974
+ let Xm = referenceValue;
3956
3975
  let Cgk = ((K/200)*tolerance - Math.abs(XbarG - Xm))/((L/2)*s);
3957
3976
  let Bias = XbarG - referenceValue;
3958
3977
  let T = Math.sqrt(data.length)*Math.abs(Bias)/s
@@ -4187,9 +4206,9 @@ export function VarianceComponents(ANOVA: any, data: GRRData){
4187
4206
  }
4188
4207
 
4189
4208
 
4190
- export function G1Graphs(data: any, tolerance: number, referenceValue: number){
4209
+ export function G1Graphs(data: any, tolerance: number, referenceValue?: number){
4191
4210
  let g1Results = G1(data, tolerance, referenceValue);
4192
-
4211
+ if(!referenceValue){referenceValue = Mean(data)}
4193
4212
  // Create Data Set
4194
4213
  let dataset = new DataSet(data.map((d: any, i: number) => {return new Point(i + 1, d)}))
4195
4214
  dataset.line.type = 'straight';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "qesuite",
3
- "version": "1.0.21",
3
+ "version": "1.0.22",
4
4
  "description": "Performs advanced statistical analysis of data. Specifically designed for engineering statistical analysis",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -0,0 +1,2 @@
1
+ Added graph bounds
2
+ Fixed G1 referenceValue === undefined bug