@@ -276,7 +276,7 @@ def style_data(self):
276276 for feature in self .data ['features' ]:
277277 feature .setdefault ('properties' ,{}).setdefault ('style' ,{}).update (
278278 self .style_function (feature ))
279- return json .dumps (self .data )
279+ return json .dumps (self .data , sort_keys = True )
280280
281281 def _get_self_bounds (self ):
282282 """Computes the bounds of the object itself (not including it's children)
@@ -353,7 +353,7 @@ def recursive_get(data, keys):
353353 for feature in geometries :
354354 feature .setdefault ('properties' ,{}).setdefault ('style' ,{}).update (
355355 self .style_function (feature ))
356- return json .dumps (self .data )
356+ return json .dumps (self .data , sort_keys = True )
357357
358358 def render (self , ** kwargs ):
359359 super (TopoJson , self ).render (** kwargs )
@@ -373,11 +373,9 @@ def _get_self_bounds(self):
373373 if not self .embed :
374374 raise ValueError ('Cannot compute bounds of non-embedded TopoJSON.' )
375375
376- data = json .loads (self .data )
377-
378376 xmin ,xmax ,ymin ,ymax = None , None , None , None
379377
380- for arc in data ['arcs' ]:
378+ for arc in self . data ['arcs' ]:
381379 x ,y = 0 ,0
382380 for dx , dy in arc :
383381 x += dx
@@ -388,12 +386,12 @@ def _get_self_bounds(self):
388386 ymax = none_max (y , ymax )
389387 return [
390388 [
391- data ['transform' ]['translate' ][0 ] + data ['transform' ]['scale' ][0 ] * xmin ,
392- data ['transform' ]['translate' ][1 ] + data ['transform' ]['scale' ][1 ] * ymin ,
389+ self . data ['transform' ]['translate' ][0 ] + self . data ['transform' ]['scale' ][0 ] * xmin ,
390+ self . data ['transform' ]['translate' ][1 ] + self . data ['transform' ]['scale' ][1 ] * ymin ,
393391 ],
394392 [
395- data ['transform' ]['translate' ][0 ] + data ['transform' ]['scale' ][0 ] * xmax ,
396- data ['transform' ]['translate' ][1 ] + data ['transform' ]['scale' ][1 ] * ymax ,
393+ self . data ['transform' ]['translate' ][0 ] + self . data ['transform' ]['scale' ][0 ] * xmax ,
394+ self . data ['transform' ]['translate' ][1 ] + self . data ['transform' ]['scale' ][1 ] * ymax ,
397395 ]
398396
399397 ]
0 commit comments