|
3 | 3 |
|
4 | 4 | """ |
5 | 5 |
|
6 | | -import json |
7 | | -import warnings |
8 | 6 | import functools |
| 7 | +import json |
9 | 8 | import operator |
| 9 | +import warnings |
10 | 10 |
|
11 | 11 | from branca.colormap import LinearColormap, StepColormap |
12 | 12 | from branca.element import (Element, Figure, JavascriptLink, MacroElement) |
13 | 13 | from branca.utilities import color_brewer |
14 | 14 |
|
15 | 15 | from folium.elements import JSCSSMixin |
16 | 16 | from folium.folium import Map |
17 | | -from folium.map import (FeatureGroup, Icon, Layer, Marker, Tooltip, Popup) |
| 17 | +from folium.map import (FeatureGroup, Icon, Layer, Marker, Popup, Tooltip) |
18 | 18 | from folium.utilities import ( |
19 | | - validate_locations, |
20 | 19 | _parse_size, |
| 20 | + camelize, |
21 | 21 | get_bounds, |
| 22 | + get_obj_in_upper_tree, |
22 | 23 | image_to_url, |
23 | 24 | none_max, |
24 | 25 | none_min, |
25 | | - get_obj_in_upper_tree, |
26 | 26 | parse_options, |
27 | | - camelize |
| 27 | + validate_locations, |
28 | 28 | ) |
29 | 29 | from folium.vector_layers import Circle, CircleMarker, PolyLine, path_options |
30 | 30 |
|
@@ -583,16 +583,16 @@ def find_identifier(self): |
583 | 583 | """ |
584 | 584 | feats = self.data['features'] |
585 | 585 | # Each feature has an 'id' field with a unique value. |
586 | | - unique_ids = set(feat.get('id', None) for feat in feats) |
| 586 | + unique_ids = {feat.get('id', None) for feat in feats} |
587 | 587 | if None not in unique_ids and len(unique_ids) == len(feats): |
588 | 588 | return 'feature.id' |
589 | 589 | # Each feature has a unique string or int property. |
590 | 590 | if all(isinstance(feat.get('properties', None), dict) for feat in feats): |
591 | 591 | for key in feats[0]['properties']: |
592 | | - unique_values = set( |
| 592 | + unique_values = { |
593 | 593 | feat['properties'].get(key, None) for feat in feats |
594 | 594 | if isinstance(feat['properties'].get(key, None), (str, int)) |
595 | | - ) |
| 595 | + } |
596 | 596 | if len(unique_values) == len(feats): |
597 | 597 | return 'feature.properties.{}'.format(key) |
598 | 598 | # We add an 'id' field with a unique value to the data. |
|
0 commit comments