aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backend/microservice/api/newmlservice.py22
-rw-r--r--frontend/package.json3
-rw-r--r--frontend/src/app/_elements/line-chart/line-chart.component.css0
-rw-r--r--frontend/src/app/_elements/line-chart/line-chart.component.html9
-rw-r--r--frontend/src/app/_elements/line-chart/line-chart.component.spec.ts25
-rw-r--r--frontend/src/app/_elements/line-chart/line-chart.component.ts57
-rw-r--r--frontend/src/app/app.module.ts4
7 files changed, 114 insertions, 6 deletions
diff --git a/backend/microservice/api/newmlservice.py b/backend/microservice/api/newmlservice.py
index 604e4d3c..219f8a20 100644
--- a/backend/microservice/api/newmlservice.py
+++ b/backend/microservice/api/newmlservice.py
@@ -155,7 +155,19 @@ def train(dataset, paramsModel,paramsExperiment,paramsDataset,callback):
data.pop(col)
#
### Enkodiranje
+<<<<<<< HEAD
encodings=paramsExperiment["encodings"]
+=======
+
+ from sklearn.preprocessing import LabelEncoder
+ kategorijskekolone=data.select_dtypes(include=['object']).columns
+ encoder=LabelEncoder()
+ for kolona in data.columns:
+ if(kolona in kategorijskekolone):
+ data[kolona]=encoder.fit_transform(data[kolona])
+ '''
+ encoding=paramsExperiment["encoding"]
+>>>>>>> 7d57bb9 (Dodate su komponente za grafik.)
datafront=dataset.copy()
svekolone=datafront.columns
kategorijskekolone=datafront.select_dtypes(include=['object']).columns
@@ -207,6 +219,8 @@ def train(dataset, paramsModel,paramsExperiment,paramsDataset,callback):
category_columns.append(col)
encoder=ce.BaseNEncoder(cols=category_columns, return_df=True, base=5)
encoder.fit_transform(data)
+
+ '''
#
# Input - output
#
@@ -301,7 +315,7 @@ def train(dataset, paramsModel,paramsExperiment,paramsDataset,callback):
- classifier.compile(loss =paramsModel["lossFunction"] , optimizer = paramsModel['optimizer'] , metrics =paramsModel['metrics'])
+ classifier.compile(loss =paramsModel["lossFunction"] , optimizer = paramsModel['optimizer'] , metrics =['accuracy','mae','mse'])
history=classifier.fit(x_train, y_train, epochs = paramsModel['epochs'],batch_size=paramsModel['batchSize'],callbacks=callback(x_test, y_test,paramsModel['_id']))
@@ -333,7 +347,7 @@ def train(dataset, paramsModel,paramsExperiment,paramsDataset,callback):
classifier.add(tf.keras.layers.Dense(units=paramsModel['hiddenLayerNeurons'], activation=paramsModel['hiddenLayerActivationFunctions'][i+1]))#i-ti skriveni sloj
classifier.add(tf.keras.layers.Dense(units=1, activation=paramsModel['outputLayerActivationFunction']))#izlazni sloj
- classifier.compile(loss =paramsModel["lossFunction"] , optimizer = paramsModel['optimizer'] , metrics =paramsModel['metrics'])
+ classifier.compile(loss =paramsModel["lossFunction"] , optimizer = paramsModel['optimizer'] , metrics =['accuracy','mae','mse'])
history=classifier.fit(x_train, y_train, epochs = paramsModel['epochs'],batch_size=paramsModel['batchSize'],callbacks=callback(x_test, y_test,paramsModel['_id']))
hist=history.history
@@ -359,7 +373,7 @@ def train(dataset, paramsModel,paramsExperiment,paramsDataset,callback):
classifier.add(tf.keras.layers.Dense(units=paramsModel['hiddenLayerNeurons'], activation=paramsModel['hiddenLayerActivationFunctions'][i+1]))#i-ti skriveni sloj
classifier.add(tf.keras.layers.Dense(units=1))
- classifier.compile(loss =paramsModel["lossFunction"] , optimizer = paramsModel['optimizer'] , metrics =paramsModel['metrics'])
+ classifier.compile(loss =paramsModel["lossFunction"] , optimizer = paramsModel['optimizer'] , metrics =['accuracy','mae','mse'])
history=classifier.fit(x_train, y_train, epochs = paramsModel['epochs'],batch_size=paramsModel['batchSize'],callbacks=callback(x_test, y_test,paramsModel['_id']))
hist=history.history
@@ -529,7 +543,7 @@ def manageH5(dataset,params,h5model):
h5model.summary()
#ann_viz(h5model, title="My neural network")
- h5model.compile(loss=params['lossFunction'], optimizer=params['optimizer'], metrics=params['metrics'])
+ h5model.compile(loss=params['lossFunction'], optimizer=params['optimizer'], metrics=params['accuracy',''])
history=h5model.fit(x2, y2, epochs = params['epochs'],batch_size=params['batchSize'])
diff --git a/frontend/package.json b/frontend/package.json
index c02a1fb0..7df35a97 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -29,13 +29,14 @@
"@popperjs/core": "^2.10.2",
"bootstrap": "^5.1.3",
"chart.js": "^3.7.1",
+ "chartjs-plugin-datalabels": "^0.7.0",
"csv-parser": "^3.0.0",
"d3-graphviz": "^2.6.1",
"jquery": "^3.6.0",
"mdb-angular-ui-kit": "^2.0.0",
"ng-multiselect-dropdown": "^0.3.8",
"ng-uikit-pro-standard": "^1.0.0",
- "ng2-charts": "^3.0.8",
+ "ng2-charts": "^3.0.9",
"ng2-search-filter": "^0.5.1",
"ngx-cookie-service": "^13.1.2",
"popper.js": "^1.16.1",
diff --git a/frontend/src/app/_elements/line-chart/line-chart.component.css b/frontend/src/app/_elements/line-chart/line-chart.component.css
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/frontend/src/app/_elements/line-chart/line-chart.component.css
diff --git a/frontend/src/app/_elements/line-chart/line-chart.component.html b/frontend/src/app/_elements/line-chart/line-chart.component.html
new file mode 100644
index 00000000..8607aac5
--- /dev/null
+++ b/frontend/src/app/_elements/line-chart/line-chart.component.html
@@ -0,0 +1,9 @@
+<div class="chart-wrapper">
+ <canvas baseChart
+ [datasets]="lineChartData"
+ [labels]="lineChartLabels"
+ [options]="lineChartOptions"
+ [legend]="lineChartLegend"
+ [plugins]="lineChartPlugins">
+ </canvas>
+</div> \ No newline at end of file
diff --git a/frontend/src/app/_elements/line-chart/line-chart.component.spec.ts b/frontend/src/app/_elements/line-chart/line-chart.component.spec.ts
new file mode 100644
index 00000000..0c5e7ef5
--- /dev/null
+++ b/frontend/src/app/_elements/line-chart/line-chart.component.spec.ts
@@ -0,0 +1,25 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { LineChartComponent } from './line-chart.component';
+
+describe('LineChartComponent', () => {
+ let component: LineChartComponent;
+ let fixture: ComponentFixture<LineChartComponent>;
+
+ beforeEach(async () => {
+ await TestBed.configureTestingModule({
+ declarations: [ LineChartComponent ]
+ })
+ .compileComponents();
+ });
+
+ beforeEach(() => {
+ fixture = TestBed.createComponent(LineChartComponent);
+ component = fixture.componentInstance;
+ fixture.detectChanges();
+ });
+
+ it('should create', () => {
+ expect(component).toBeTruthy();
+ });
+});
diff --git a/frontend/src/app/_elements/line-chart/line-chart.component.ts b/frontend/src/app/_elements/line-chart/line-chart.component.ts
new file mode 100644
index 00000000..7a06ecf5
--- /dev/null
+++ b/frontend/src/app/_elements/line-chart/line-chart.component.ts
@@ -0,0 +1,57 @@
+import { Component, OnInit } from '@angular/core';
+import { ChartOptions } from 'chart.js';
+import { BaseChartDirective } from 'ng2-charts';
+
+@Component({
+ selector: 'app-line-chart',
+ templateUrl: './line-chart.component.html',
+ styleUrls: ['./line-chart.component.css']
+})
+export class LineChartComponent implements OnInit {
+
+ constructor() { }
+
+ ngOnInit(): void {
+ }
+ lineChartData:Array<any> = [
+ {data: [65, 59, 80, 81, 56, 55, 40], label: 'Series A'},
+ {data: [28, 48, 40, 19, 86, 27, 90], label: 'Series B'},
+ {data: [18, 48, 77, 9, 100, 27, 40], label: 'Series C'}
+ ];
+ lineChartLabels: BaseChartDirective["labels"] = ['January', 'February', 'March', 'April', 'May', 'June'];
+ lineChartOptions = {
+ responsive: true,
+ };
+ lineChartColors:Array<any> = [
+ { // grey
+ backgroundColor: 'rgba(148,159,177,0.2)',
+ borderColor: 'rgba(148,159,177,1)',
+ pointBackgroundColor: 'rgba(148,159,177,1)',
+ pointBorderColor: '#fff',
+ pointHoverBackgroundColor: '#fff',
+ pointHoverBorderColor: 'rgba(148,159,177,0.8)'
+ },
+ { // dark grey
+ backgroundColor: 'rgba(77,83,96,0.2)',
+ borderColor: 'rgba(77,83,96,1)',
+ pointBackgroundColor: 'rgba(77,83,96,1)',
+ pointBorderColor: '#fff',
+ pointHoverBackgroundColor: '#fff',
+ pointHoverBorderColor: 'rgba(77,83,96,1)'
+ },
+ { // grey
+ backgroundColor: 'rgba(148,159,177,0.2)',
+ borderColor: 'rgba(148,159,177,1)',
+ pointBackgroundColor: 'rgba(148,159,177,1)',
+ pointBorderColor: '#fff',
+ pointHoverBackgroundColor: '#fff',
+ pointHoverBorderColor: 'rgba(148,159,177,0.8)'
+ }
+ ];
+ lineChartLegend = true;
+ lineChartPlugins = [];
+ lineChartType = 'line';
+
+}
+
+
diff --git a/frontend/src/app/app.module.ts b/frontend/src/app/app.module.ts
index 948e9a2b..6a95bfe6 100644
--- a/frontend/src/app/app.module.ts
+++ b/frontend/src/app/app.module.ts
@@ -50,6 +50,7 @@ import { YesNoDialogComponent } from './_modals/yes-no-dialog/yes-no-dialog.comp
import { Configuration } from './configuration.service';
import { PointLinechartComponent } from './point-linechart/point-linechart.component';
+import { LineChartComponent } from './_elements/line-chart/line-chart.component';
export function initializeApp(appConfig: Configuration) {
return () => appConfig.load();
}
@@ -89,7 +90,8 @@ export function initializeApp(appConfig: Configuration) {
TrainingComponent,
ItemExperimentComponent,
YesNoDialogComponent,
- PointLinechartComponent
+ PointLinechartComponent,
+ LineChartComponent
],
imports: [
BrowserModule,