| import pandas as pd |
| import matplotlib.pyplot as plt |
| from sklearn.preprocessing import MinMaxScaler |
|
|
| |
| plt.rcParams['font.family'] = 'Times New Roman' |
|
|
| |
| datas = [ |
| [2.674, 0.814, 0.579, 5.69, 2.51], |
| [2.543, 0.823, 0.584, 5.31, 2.56], |
| [2.411, 0.837, 0.591, 4.87, 2.59], |
| [2.174, 0.866, 0.595, 4.21, 2.66], |
| [2.276, 0.861, 0.594, 4.47, 2.62], |
| [2.310, 0.855, 0.593, 4.68, 2.59], |
| ] |
| metrics = ["CER", "Emo2V.", "S-SIM", "DNSV", "AutoPCP"] |
| x_labels = [0, 100, 200, 500, 1000, 2000] |
|
|
| |
| df = pd.DataFrame(datas, columns=metrics) |
| df['Step'] = x_labels |
|
|
| |
| scaler = MinMaxScaler() |
| df_scaled = df.copy() |
| df_scaled[metrics] = scaler.fit_transform(df[metrics]) |
|
|
| |
| plt.figure(figsize=(8, 4), dpi=300) |
|
|
| for metric in metrics: |
| plt.plot(df_scaled["Step"], df_scaled[metric], label=metric, linewidth=2) |
|
|
| |
| |
| plt.xticks(x_labels, fontsize=16) |
| plt.yticks(fontsize=16) |
| plt.legend(fontsize=16) |
| plt.grid(True) |
| plt.tight_layout() |
|
|
| |
| plt.savefig("examples/celsds/infer/evaluate/normalized_metric_trends.png", dpi=300) |
|
|
| plt.show() |
|
|