Dodanie generowanie wykresu z metrykami

This commit is contained in:
Norbert Walkowiak 2023-06-08 14:45:44 +02:00
parent 38f63341cf
commit e8678d6392
2 changed files with 37 additions and 0 deletions

View File

@ -49,6 +49,12 @@ pipeline{
}
}
stage('Plotly metrics chart'){
steps{
sh "docker run -v ${env.WORKSPACE}:/app ium python3 /app/metrics-chart.py"
}
}
stage('Archive prediction results'){
steps{
sh "docker cp \$(docker ps -l -q):/app/results_prediction.csv ${env.WORKSPACE}"

31
metrics-chart.py Normal file
View File

@ -0,0 +1,31 @@
# Mając skumulowane wartości metryk z wszystkich dotychczasowych buildów,
# stwórz wykres: na osi X numer builda, na osi Y wartość metryk(i)
import pandas as pd
import matplotlib.pyplot as plt
# wczytanie pliku csv z metrykami
metrics_df = pd.read_csv('metrics.csv')
# Podział wartości
build_numbers = metrics_df['Build Number']
accuracy_values = metrics_df['Accuracy']
precision_values = metrics_df['Micro-avg Precision']
recall_values = metrics_df['Micro-avg Recall']
f1_score_values = metrics_df['F1 Score']
rmse_values = metrics_df['RMSE']
# Plotowanie wykresu
plt.plot(build_numbers, accuracy_values, label='Accuracy')
plt.plot(build_numbers, precision_values, label='Micro-avg Precision')
plt.plot(build_numbers, recall_values, label='Micro-avg Recall')
plt.plot(build_numbers, f1_score_values, label='F1 Score')
plt.plot(build_numbers, rmse_values, label='RMSE')
plt.legend()
plt.xlabel('Build number')
plt.ylabel('Value metric')
plt.savefig('metrics_chart_plot.png')
plt.show()