Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions examples/mwe.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

gaps = fbn.fixbikenet(
city_name="Frederiksberg municipality",
export_file_format="geojson",
)

# data is saved in current working directory, as gaps.gpkg
9 changes: 5 additions & 4 deletions fixbikenet/fixbikenet.py
Original file line number Diff line number Diff line change
Expand Up @@ -90,11 +90,11 @@ def fixbikenet(
g = map_edges_to_bike_infrastructure(g)
edges_gdf = bike_infra_mapping_gdf(g, edges_gdf)

print("Checking for parallel edges to drop...")
print("Dropping parallel edges..")
edges_to_drop = find_edges_to_drop(g)
g.remove_edges_from(edges_to_drop)
print("Edges dropped")

print("Detecting gaps..")
# Capital-G: the Graph() object we will be working with from now on
G = nx.Graph(g)

Expand All @@ -111,9 +111,10 @@ def fixbikenet(
found_gaps, found_gaps_nsp = find_actual_gaps(G, potential_gaps)

# calculating local betweenness score dependent on radius
print("Calculating local betweenness centrality..")
print("Calculating betweenness centrality..")
ebc = compute_local_betweenness_centrality(G, nodes_gdf, radius)

print("Ranking gaps..")
# calculate parameter B for all gaps, used for deciding which gaps are most important
Bs = rank_gaps_by_b(found_gaps_nsp, G, ebc)

Expand Down Expand Up @@ -147,7 +148,7 @@ def fixbikenet(
if export_data:
os.makedirs("./results/", exist_ok=True)
export_data_filename = (
city_name + "-" + export_file_format
city_name + "." + export_file_format
)

if export_data:
Expand Down
3 changes: 2 additions & 1 deletion fixbikenet/functions.py
Original file line number Diff line number Diff line change
Expand Up @@ -312,8 +312,9 @@ def get_correct_edgetuples(edge_gdf, nodelist):
"""
edgelist_prelim = zip(nodelist, nodelist[1:])
edgelist_final = []
temp_gdf = edge_gdf.sort_index() # To circumvent PerformanceWarning, see https://stackoverflow.com/questions/54307300/what-causes-indexing-past-lexsort-depth-warning-in-pandas
for edge_prelim in edgelist_prelim:
if edge_prelim in edge_gdf.index:
if edge_prelim in temp_gdf.index:
edgelist_final.append(edge_prelim)
else:
edgelist_final.append(tuple([edge_prelim[1], edge_prelim[0]]))
Expand Down
Loading