From 0a88a059bc9e75bbc1a6e6601d8daffab3de9c7b Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Mon, 1 Jun 2020 13:02:22 +0200 Subject: [PATCH] interactive compare map (not working) --- rowers/interactiveplots.py | 139 +++++++++++++++++++++++++++++++++++++ 1 file changed, 139 insertions(+) diff --git a/rowers/interactiveplots.py b/rowers/interactiveplots.py index 07a84620..62ef4e79 100644 --- a/rowers/interactiveplots.py +++ b/rowers/interactiveplots.py @@ -2047,6 +2047,145 @@ def leaflet_chart(lat,lon,name=""): + return script,div + +def leaflet_chart_compare(latlondf,name=""): + if lat.empty or lon.empty: + return [0,"invalid coordinate data"] + + + # Throw out 0,0 + df = pd.DataFrame({ + 'lat':lat, + 'lon':lon + }) + + df = df.replace(0,np.nan) + df = df.loc[(df!=0).any(axis=1)] + df.fillna(method='bfill',axis=0,inplace=True) + df.fillna(method='ffill',axis=0,inplace=True) + lat = df['lat'] + lon = df['lon'] + if lat.empty or lon.empty: + return [0,"invalid coordinate data"] + + latmean = lat.mean() + lonmean = lon.mean() + latbegin = lat[lat.index[0]] + longbegin = lon[lon.index[0]] + latend = lat[lat.index[-1]] + longend = lon[lon.index[-1]] + + coordinates = zip(lat,lon) + + scoordinates = "[" + + for x,y in coordinates: + scoordinates += """[{x},{y}], + """.format( + x=x, + y=y + ) + + scoordinates += "]" + + script = """ + + """.format( + latmean=latmean, + lonmean=lonmean, + latbegin = latbegin, + latend=latend, + longbegin=longbegin, + longend=longend, + scoordinates=scoordinates, + ) + + div = """ +

 

+ """ + + + return script,div def leaflet_chart2(lat,lon,name=""):