qesuite 1.0.7 → 1.0.8

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.js CHANGED
@@ -490,6 +490,9 @@ function ObjectToArray(object) {
490
490
  return returnArray;
491
491
  }
492
492
  function RoundTO(number, digits) {
493
+ if (number === 0) {
494
+ return;
495
+ }
493
496
  let str = number.toString();
494
497
  let decimalIndex = str.indexOf(".");
495
498
  let returner = Number(str.substring(0, decimalIndex + digits + 1));
package/dist/index.mjs CHANGED
@@ -406,6 +406,9 @@ function ObjectToArray(object) {
406
406
  return returnArray;
407
407
  }
408
408
  function RoundTO(number, digits) {
409
+ if (number === 0) {
410
+ return;
411
+ }
409
412
  let str = number.toString();
410
413
  let decimalIndex = str.indexOf(".");
411
414
  let returner = Number(str.substring(0, decimalIndex + digits + 1));
package/index.ts CHANGED
@@ -468,6 +468,7 @@ export function ObjectToArray(object: any){
468
468
  }
469
469
 
470
470
  export function RoundTO(number: number, digits: number){
471
+ if(number === 0){return}
471
472
  let str = number.toString();
472
473
  let decimalIndex = str.indexOf('.');
473
474
  let returner = Number(str.substring(0, decimalIndex + digits + 1));
@@ -4098,6 +4099,61 @@ export function GRR_PartxOperatorChart(data: GRR_Data){
4098
4099
  return CreateScatterPlot(dataSets ,'Part * Operator Interaction', chartSettings)
4099
4100
  }
4100
4101
 
4102
+ function CompileGRRObject(operators, parts, measurements){
4103
+ let arrayOfSmallerObjects: any[] = [];
4104
+ if(!(operators.length === parts.length && operators.length === measurements.length)){return}
4105
+
4106
+ operators.forEach((o, i) => {
4107
+ arrayOfSmallerObjects.push({operator: o, part: parts[i], measurement: measurements[i]});
4108
+ })
4109
+
4110
+ let sortedByOperators = SplitObjectArrayByProp(arrayOfSmallerObjects, "operator")
4111
+
4112
+ let thenSortedByParts: any[] = [];
4113
+
4114
+ sortedByOperators.forEach(s => {
4115
+ let entriesByPart = SplitObjectArrayByProp(s.entries, "part");
4116
+ let obj = {
4117
+ operator: s.selector,
4118
+ entriesByPart: entriesByPart
4119
+ }
4120
+ thenSortedByParts.push(obj)
4121
+ })
4122
+
4123
+ let grrData = new GRR_Data([]);
4124
+
4125
+ thenSortedByParts.forEach(t => {
4126
+ let numberOfReps = t.entriesByPart[0].entries.length;
4127
+
4128
+ let grrOp = new GRR_Operator([], t.operator);
4129
+ for(let i = 0; i < numberOfReps; i++){
4130
+ let newRep = new GRR_Replication([]);
4131
+ t.entriesByPart.forEach(e => {
4132
+ newRep.parts.push(e.entries[i].measurement);
4133
+ })
4134
+ grrOp.replications.push(newRep);
4135
+ }
4136
+ grrData.operators.push(grrOp);
4137
+ })
4138
+ return grrData
4139
+ }
4140
+
4141
+ function SplitObjectArrayByProp(array: any[], prop: string){
4142
+ let newArray: any[] = [];
4143
+ array.forEach(a => {
4144
+ let propValue = a[prop];
4145
+ let newObj = newArray.find(entry => entry.selector === propValue);
4146
+ if(newObj){
4147
+ newObj.entries.push(a);
4148
+ }else{
4149
+ newArray.push({
4150
+ selector: propValue,
4151
+ entries: [a]
4152
+ })
4153
+ }
4154
+ })
4155
+ return newArray;
4156
+ }
4101
4157
  // End Measurement Systems Analysis
4102
4158
  /** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4103
4159
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "qesuite",
3
- "version": "1.0.7",
3
+ "version": "1.0.8",
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,6 @@
1
+ Added functions to MSA Module to convert arrays Operator, Part, Measurement to GRR_Data object.
2
+
3
+ - CompileGRRObject
4
+ - SplitObjectArrayByProp
5
+
6
+ Fixed bug that prevented graphs from generating with user defined upper/lower axis bounds.