def generate_mltr_fp_scatter(circuit_results, circuit_races, circuit_driver_standings): """ Mean lap time rank vs finish position scatter :param circuit_results: Circuit results :param circuit_races: Circuit races :param circuit_driver_standings: Circuit driver standings :return: Mean lap time vs finish pos scatter layout """ return driver.generate_mltr_fp_scatter(circuit_results, circuit_races, circuit_driver_standings, color_drivers=True)
def generate_mltr_fp_scatter(yd_results, yd_races, yd_driver_standings): """ Plot mean lap time vs finish position scatter plot (see `driver.generate_mltr_fp_scatter`) :param yd_results: YD results :param yd_races: YD races :param yd_driver_standings: YD driver standings :return: Mean lap time rank vs finish pos scatter plot layout """ return driver.generate_mltr_fp_scatter(yd_results, yd_races, yd_driver_standings, include_race_labels=True)
def generate_mltr_fp_scatter(ydc_results, yd_races, yd_driver_standings): """ Mean lap time rank vs finish pos scatter, uses driver.generate_mltr_fp_scatter. :param ydc_results: YDC results :param yd_races: YD races :param yd_driver_standings: YD driver standings :return: Mean lap time rank vs finish pos scatter """ return driver.generate_mltr_fp_scatter(ydc_results, yd_races, yd_driver_standings, include_race_labels=True)
def generate_mltr_fp_scatter(cd_results, cd_races, driver_driver_standings): """ Plot scatter of mean lap time rank (x) vs finish position (y) to get a sense of what years the driver out-drove the car :param cd_results: CD results :param cd_races: CD races :param driver_driver_standings: Driver driver standings :return: Mean lap time rank vs finish position scatter plot layout """ return driver.generate_mltr_fp_scatter(cd_results, cd_races, driver_driver_standings, include_year_labels=True)
def generate_mltr_fp_scatter(cc_results, cc_races, cc_driver_standings): """ Plot scatter of finish position vs mean lap time rank to get a sense of what years the driver out-drove the car. Use method in `driver` :param cc_results: CC results :param cc_races: CC races :param cc_driver_standings: CC driver standings :return: Mean lap time rank vs finish pos scatter plot """ return driver.generate_mltr_fp_scatter(cc_results, cc_races, cc_driver_standings, include_year_labels=True, color_drivers=True)
def generate_mltr_fp_scatter(yc_results, yc_races, yc_driver_standings): """ Generates a plot of mean lap time rank vs finish position scatter plot (see circuitdriver.generate_mltr_fp_scatter). :param yc_results: YC results :param yc_races: YC races :param yc_driver_standings: YC driver standings :return: Mean lap time rank vs finish pos scatter """ kwargs = dict( include_year_labels=False, include_race_labels=True, color_drivers=True ) return driver.generate_mltr_fp_scatter(yc_results, yc_races, yc_driver_standings, **kwargs)
# WDC Position bar plot generate_wdc_position_bar_plot = time_decorator(generate_wdc_position_bar_plot) wdc_position_dist = generate_wdc_position_bar_plot(positions_source) # Win/podium plot generate_win_plot = time_decorator(generate_win_plot) win_plot = generate_win_plot(positions_source, driver_id) # Starting position vs finish position scatter generate_spvfp_scatter = time_decorator(generate_spvfp_scatter) spvfp_scatter = generate_spvfp_scatter(driver_results, driver_races, driver_driver_standings) # Mean lap time rank vs finish position scatter plot generate_mltr_fp_scatter = time_decorator(generate_mltr_fp_scatter) mltr_fp_scatter = generate_mltr_fp_scatter(driver_results, driver_races, driver_driver_standings, driver_id) # Team performance graph and table generate_team_performance_layout = time_decorator( generate_team_performance_layout) generate_team_performance_layout(driver_races, positions_source, driver_results) n = drivers.index.unique().shape[0] i = 1 for driver_id in drivers.index.unique(): try: name = get_driver_name(driver_id, include_flag=False) print(f"Testing driver ID {driver_id}, {name}, {i} / {n}") i += 1