city_data_dict["City"] = city_data["name"] city_data_dict["Country"] = city_data["country"] city_data_dict["Latitude"] = city_data.lat city_data_dict["Longitude"] = city_data.lon city_data_dict["Buffer radius (km)"] = int(city_data.buffer) city_data_dict["Download date"] = city_data.download_date license = CITY_ID_TO_LICENSE_TYPE[city] license = license.replace("CC", "CC BY") license = license.replace("CC BY0", "CC0") license = license.replace("_", " ") city_data_dict["License"] = license feeds = get_feeds_from_to_publish_tuple(city_data) pipeline = ExtractPipeline(city_data, feeds) try: day_G = GTFS(pipeline.day_db_path) trip_counts_per_day = day_G.get_trip_counts_per_day() print(trip_counts_per_day) assert len(trip_counts_per_day) <= 3 city_data_dict["Extract date"] = str(trip_counts_per_day.loc[ trip_counts_per_day['trip_counts'] == max( trip_counts_per_day['trip_counts'])].iloc[0]['date']) print(city_data_dict["Extract date"].replace(" 00:00:00", "")) city_data_dict["n_stops"] = len( day_G.stops(require_reference_in_stop_times=True)) city_data_dict["n_connections"] = len(day_G.get_transit_events()) n_links = len( combined_stop_to_stop_transit_network(day_G).edges(data=True)) city_data_dict["n_links"] = int(n_links) except FileNotFoundError as e: print("File " + pipeline.day_db_path + " was not found") city_data_dict["Extract date"] = "NaN"
datetimes = [date.to_pydatetime() for date in daily_trip_counts['date']] trip_counts = daily_trip_counts['trip_counts'] ax.bar(datetimes, trip_counts) ax.axvline(G.meta['download_date'], color="red") threshold = 0.96 ax.axhline(trip_counts.max() * threshold, color="red") ax.axvline(G.get_weekly_extract_start_date(weekdays_at_least_of_max=threshold), color="yellow") weekly_db_path = "test_db_kuopio.week.sqlite" if os.path.exists(weekly_db_path): G = GTFS(weekly_db_path) f, ax = plt.subplots() daily_trip_counts = G.get_trip_counts_per_day() datetimes = [date.to_pydatetime() for date in daily_trip_counts['date']] trip_counts = daily_trip_counts['trip_counts'] ax.bar(datetimes, trip_counts) events = list( G.generate_routable_transit_events( 0, G.get_approximate_schedule_time_span_in_ut()[0])) min_ut = float('inf') for e in events: min_ut = min(e.dep_time_ut, min_ut) print(G.get_approximate_schedule_time_span_in_ut()) plt.show()