/
GraphTreeHeap
/
museumdb2_experiments
Обзор
Документация
Войти
/
GraphTreeHeap
/
museumdb2_experiments
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
scripts/result_viewer_range.py
45 строк
2 KB
FedMam
Add all scripts
25 май 2026, 19:18
25 май 2026, 19:18
a73447a
Код
Авторство
О чём код?
import sys import numpy as np import matplotlib.pyplot as plt import pandas as pd import re DATASET = sys.argv[1] df = pd.read_csv(DATASET + '-final.csv') df = df[df['Type'].str.startswith('range')] df['NEntries'] = [int(re.match(r'range\((\d+)\)', tp).group(1)) for tp in df['Type']] df = df.groupby('NEntries').agg({ 'NEntries': ['min'], 'MuseumDB2_Time': ['mean', 'std'], 'PostgreSQL_Time': ['mean', 'std'], 'MySQL_Time': ['mean', 'std'] }).fillna(0) TITLE = f'Абсолютное время выполнения зароса range (датасет {DATASET})' RED = '#E01B24' BLUE = '#1C71D8' YELLOW = '#F5C211' fig, ax = plt.subplots() ''' ax.fill_between(df[('NEntries', 'min')], df[('MySQL_Time', 'mean')] - df[('MySQL_Time', 'std')], df[('MySQL_Time', 'mean')] + df[('MySQL_Time', 'std')], label='MySQL (std)', alpha=0.2, color=YELLOW) ax.fill_between(df[('NEntries', 'min')], df[('PostgreSQL_Time', 'mean')] - df[('PostgreSQL_Time', 'std')], df[('PostgreSQL_Time', 'mean')] + df[('PostgreSQL_Time', 'std')], label='PostGIS (std)', alpha=0.2, color=BLUE) ax.fill_between(df[('NEntries', 'min')], df[('MuseumDB2_Time', 'mean')] - df[('MuseumDB2_Time', 'std')], df[('MuseumDB2_Time', 'mean')] + df[('MuseumDB2_Time', 'std')], label='MuseumDB2 (std)', alpha=0.2, color=RED) ''' ax.plot(df[('NEntries', 'min')], df[('MySQL_Time', 'mean')], label='MySQL', color=YELLOW) ax.plot(df[('NEntries', 'min')], df[('PostgreSQL_Time', 'mean')], label='PostGIS', color=BLUE) ax.plot(df[('NEntries', 'min')], df[('MuseumDB2_Time', 'mean')], label='MuseumDB2', color=RED) ax.set_xlabel('Число найденных точек') ax.set_ylabel('Время (с)') ax.set_title(TITLE) ax.legend(loc='upper left') plt.tight_layout() plt.show()