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"
示例#2
0
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()