108 lines
4.3 KiB
HTML
108 lines
4.3 KiB
HTML
<rb-tab-panel (tabChanged)="groupChange($event)">
|
||
<ng-container *ngFor="let group of d.arr.modelGroups; index as i">
|
||
<div *rbTabPanelItem="group.group; id: i"></div>
|
||
</ng-container>
|
||
</rb-tab-panel>
|
||
|
||
<rb-form-select label="Model" (change)="result = undefined" [(ngModel)]="activeModelIndex">
|
||
<option *ngFor="let model of activeGroup.models; index as i" [value]="i">{{model.name}}</option>
|
||
</rb-form-select>
|
||
|
||
<div *ngIf="result" class="result" [@inOut]>
|
||
<ng-container *ngIf="multipleSamples; else singleSampleResult">
|
||
<h4 *ngFor="let prediction of result.predictions; index as i">
|
||
{{spectrumNames[i]}}:
|
||
<span *ngFor="let predictionEntry of prediction">
|
||
{{predictionEntry.category}} <span [ngStyle]="{color: predictionEntry.color}">{{predictionEntry.value}}</span> {{predictionEntry.label}}
|
||
</span>
|
||
<a [routerLink]='"."' fragment="disclaimer"><sup>#</sup></a>
|
||
</h4>
|
||
</ng-container>
|
||
<ng-template #singleSampleResult>
|
||
<h4>
|
||
Average result:
|
||
<span *ngFor="let predictionEntry of result.mean">
|
||
{{predictionEntry.category}} <span [ngStyle]="{color: predictionEntry.color}">{{predictionEntry.value}}</span> {{predictionEntry.label}} {{( predictionEntry.std !== '' ? ' (standard deviation: '+ predictionEntry.std+')' : '') }}
|
||
</span>
|
||
<a [routerLink]='"."' fragment="disclaimer"><sup>#</sup></a>
|
||
</h4>
|
||
<a class="rb-details-toggle" rbDetailsToggle #triggerDetails="rbDetailsToggle">Details</a>
|
||
<div *ngIf="triggerDetails.open" class="space-below">
|
||
<p *ngFor="let prediction of result.predictions; index as i">
|
||
{{spectrumNames[i]}}:
|
||
<span *ngFor="let predictionEntry of prediction">
|
||
{{predictionEntry.category}} <span [ngStyle]="{color: predictionEntry.color}">{{predictionEntry.value}}</span> {{predictionEntry.label}}
|
||
</span>
|
||
<a [routerLink]='"."' fragment="disclaimer"><sup>#</sup></a>
|
||
</p>
|
||
</div>
|
||
</ng-template>
|
||
</div>
|
||
|
||
<div class="file-input space-below">
|
||
<rb-form-file name="spectrum-upload" label="Spectrum File" maxSize="10000000" class="space-below" multiple
|
||
(ngModelChange)="fileToArray($event)" placeholder="Select file or drag and drop" dragDrop ngModel>
|
||
</rb-form-file>
|
||
|
||
<rb-loading-spinner *ngIf="loading; else predictButton"></rb-loading-spinner>
|
||
<ng-template #predictButton>
|
||
<rb-icon-button icon="forward-right" mode="primary" *ngIf="spectrumNames.length; else placeholder"
|
||
(click)="loadPrediction()">
|
||
Predict
|
||
</rb-icon-button>
|
||
<ng-template #placeholder><div></div></ng-template>
|
||
</ng-template>
|
||
|
||
<div>
|
||
Prediction of:
|
||
<rb-form-radio name="multiple-samples" label="Single sample" [(ngModel)]="multipleSamples" [value]="false">
|
||
</rb-form-radio>
|
||
<rb-form-radio name="multiple-samples" label="Multiple samples" [(ngModel)]="multipleSamples" [value]="true">
|
||
</rb-form-radio>
|
||
</div>
|
||
</div>
|
||
|
||
<!-- CSV export -->
|
||
<rb-icon-button icon="download" mode="secondary" (click)="exportCSV()" *ngIf="spectrumNames.length" style="margin-right: 0.5rem">
|
||
Export to CSV
|
||
</rb-icon-button>
|
||
|
||
<!-- PDF export -->
|
||
<rb-icon-button icon="download" mode="secondary" (click)="exportPDF()" *ngIf="spectrumNames.length">
|
||
Export to PDF
|
||
</rb-icon-button>
|
||
|
||
<!-- Save Prediction -->
|
||
<!-- Only available for single sample viscosity number predictions -->
|
||
<div *ngIf="spectrumNames.length && !multipleSamples && activeGroup.group === 'Viscosity Number'">
|
||
<rb-form-input name="prediction-name" label="Prediction Name" [(ngModel)]="predictionName"></rb-form-input>
|
||
<rb-icon-button icon="forward-right" mode="secondary" (click)="savePrediction()" [rbModal]="modalSuccess">
|
||
Save Prediction
|
||
</rb-icon-button>
|
||
<ng-template #modalSuccess>
|
||
<rb-alert alertTitle="Success" type="success" okBtnLabel="Got it">
|
||
Prediction saved!
|
||
</rb-alert>
|
||
</ng-template>
|
||
</div>
|
||
|
||
<div class="dpt-chart space-below">
|
||
<canvas baseChart
|
||
class="dpt-chart"
|
||
[datasets]="chart"
|
||
[labels]="[]"
|
||
[options]="chartOptions"
|
||
[legend]="false"
|
||
chartType="scatter">
|
||
</canvas>
|
||
</div>
|
||
|
||
<div class="shaded-container" id="disclaimer">
|
||
<h4><sup>#</sup>Disclaimer: This tool is still under development</h4>
|
||
<p>
|
||
The prediction and classification of material parameters are validated only for certain conditions.
|
||
These results may therefore under no circumstances be used to evaluate quality-relevant issues. <br>
|
||
For more details please contact <a [href]="'mailto:' + d.contact.mail">{{d.contact.name}}</a>.
|
||
</p>
|
||
</div>
|