import holoviews as hv
import geoviews as gv
from holoviews import opts, streams
from cartopy import crs
import numpy as np
import pyproj
import libgsidem2el as gsi
hv.extension('bokeh', logo=False)
gv.extension('bokeh', logo=False)
outcrs = crs.epsg(6677)
url = 'https://cyberjapandata.gsi.go.jp/xyz/seamlessphoto/{Z}/{X}/{Y}.jpg'
geomap = gv.WMTS(url, crs=outcrs)
path = gv.Path([[(0,0),(100,100)]], crs=outcrs)
path_stream = streams.PolyDraw(source=path, drag=False, show_vertices=True)
geo = geomap * path.opts( opts.Path(color='red', line_width=5) )
f = geo.options(width=600, height=400)
f
path_stream
PolyDraw(data={'xs': [array([-2.2939349e-09, 1.0000000e+02])], 'ys': [array([2.99391868e-25, 1.00000000e+02])]})
data={'xs': [np.array([-3367.73567716, -3290.62303946])], 'ys': [np.array([-26307.68964812, -26975.23822235])]}
outcrs = crs.epsg(6677)
url = 'https://cyberjapandata.gsi.go.jp/xyz/seamlessphoto/{Z}/{X}/{Y}.jpg'
geomap = gv.WMTS(url, crs=outcrs)
xs = data['xs'][0]
ys = data['ys'][0]
p0, p1 = np.array([xs[0], ys[0]]), np.array( [xs[1], ys[1]] )
path = gv.Path([[p0,p1]], crs=outcrs)
geo = geomap * path.opts( opts.Path(color='red', line_width=5) )
f = geo.options(width=400, height=300)
hv.save(f, 'location.html')
f
# data = path_stream.data
xs = data['xs'][0]
ys = data['ys'][0]
p0, p1 = np.array([xs[0], ys[0]]), np.array( [xs[1], ys[1]] )
# unit vector
d = p1 - p0
L = np.sqrt(d[0]**2 + d[1]**2)
e = d / L
dx = 5
point = np.array( [p0 + x * e for x in np.arange(0, L, dx)] )
dem = gsi.libgsidem2el('DEM5A')
EPSGout = pyproj.Proj("+init=EPSG:6668")
EPSGin = pyproj.Proj("+init=EPSG:6677")
z = []
for p in point:
lon, lat = pyproj.transform( EPSGin, EPSGout, *p)
zt = dem.getEL(lon, lat, zoom = 15)
if type(zt) is str : zt = np.nan
z.append( zt )
z = np.array(z, dtype=np.float)
point3d = np.hstack([point, np.array([z]).T])
point3d
array([[-3.36773568e+03, -2.63076896e+04, -1.20000000e-01], [-3.36716191e+03, -2.63126566e+04, -9.00000000e-02], [-3.36658815e+03, -2.63176236e+04, -8.00000000e-02], [-3.36601438e+03, -2.63225906e+04, -1.00000000e-01], [-3.36544062e+03, -2.63275575e+04, -1.30000000e-01], [-3.36486685e+03, -2.63325245e+04, -1.50000000e-01], [-3.36429309e+03, -2.63374915e+04, -1.20000000e-01], [-3.36371932e+03, -2.63424584e+04, 0.00000000e+00], [-3.36314556e+03, -2.63474254e+04, -2.00000000e-02], [-3.36257179e+03, -2.63523924e+04, -8.00000000e-02], [-3.36199802e+03, -2.63573594e+04, -3.40000000e-01], [-3.36142426e+03, -2.63623263e+04, -6.00000000e-02], [-3.36085049e+03, -2.63672933e+04, 6.00000000e-02], [-3.36027673e+03, -2.63722603e+04, 8.00000000e-02], [-3.35970296e+03, -2.63772272e+04, -6.00000000e-02], [-3.35912920e+03, -2.63821942e+04, -1.40000000e-01], [-3.35855543e+03, -2.63871612e+04, -1.90000000e-01], [-3.35798167e+03, -2.63921281e+04, -1.90000000e-01], [-3.35740790e+03, -2.63970951e+04, -1.90000000e-01], [-3.35683414e+03, -2.64020621e+04, -2.00000000e-01], [-3.35626037e+03, -2.64070291e+04, 3.00000000e-02], [-3.35568661e+03, -2.64119960e+04, 1.30000000e+00], [-3.35511284e+03, -2.64169630e+04, 2.86000000e+00], [-3.35453908e+03, -2.64219300e+04, 4.72000000e+00], [-3.35396531e+03, -2.64268969e+04, 8.17000000e+00], [-3.35339155e+03, -2.64318639e+04, 8.84000000e+00], [-3.35281778e+03, -2.64368309e+04, 8.84000000e+00], [-3.35224402e+03, -2.64417978e+04, 8.57000000e+00], [-3.35167025e+03, -2.64467648e+04, 6.80000000e+00], [-3.35109648e+03, -2.64517318e+04, 5.70000000e+00], [-3.35052272e+03, -2.64566988e+04, 4.69000000e+00], [-3.34994895e+03, -2.64616657e+04, 2.93000000e+00], [-3.34937519e+03, -2.64666327e+04, 2.77000000e+00], [-3.34880142e+03, -2.64715997e+04, 2.73000000e+00], [-3.34822766e+03, -2.64765666e+04, 2.82000000e+00], [-3.34765389e+03, -2.64815336e+04, 2.93000000e+00], [-3.34708013e+03, -2.64865006e+04, 2.89000000e+00], [-3.34650636e+03, -2.64914675e+04, 2.85000000e+00], [-3.34593260e+03, -2.64964345e+04, 2.81000000e+00], [-3.34535883e+03, -2.65014015e+04, 2.79000000e+00], [-3.34478507e+03, -2.65063685e+04, 2.77000000e+00], [-3.34421130e+03, -2.65113354e+04, 2.75000000e+00], [-3.34363754e+03, -2.65163024e+04, 2.72000000e+00], [-3.34306377e+03, -2.65212694e+04, 2.71000000e+00], [-3.34249001e+03, -2.65262363e+04, 2.70000000e+00], [-3.34191624e+03, -2.65312033e+04, 2.64000000e+00], [-3.34134248e+03, -2.65361703e+04, 2.61000000e+00], [-3.34076871e+03, -2.65411372e+04, 2.56000000e+00], [-3.34019494e+03, -2.65461042e+04, 2.52000000e+00], [-3.33962118e+03, -2.65510712e+04, 2.47000000e+00], [-3.33904741e+03, -2.65560382e+04, 2.45000000e+00], [-3.33847365e+03, -2.65610051e+04, 2.15000000e+00], [-3.33789988e+03, -2.65659721e+04, 6.20000000e-01], [-3.33732612e+03, -2.65709391e+04, 3.00000000e-02], [-3.33675235e+03, -2.65759060e+04, -3.60000000e-01], [-3.33617859e+03, -2.65808730e+04, -4.10000000e-01], [-3.33560482e+03, -2.65858400e+04, -4.00000000e-01], [-3.33503106e+03, -2.65908070e+04, -3.70000000e-01], [-3.33445729e+03, -2.65957739e+04, -3.40000000e-01], [-3.33388353e+03, -2.66007409e+04, -2.80000000e-01], [-3.33330976e+03, -2.66057079e+04, -2.40000000e-01], [-3.33273600e+03, -2.66106748e+04, -1.90000000e-01], [-3.33216223e+03, -2.66156418e+04, -1.50000000e-01], [-3.33158847e+03, -2.66206088e+04, -1.20000000e-01], [-3.33101470e+03, -2.66255757e+04, -1.30000000e-01], [-3.33044094e+03, -2.66305427e+04, -1.50000000e-01], [-3.32986717e+03, -2.66355097e+04, -1.70000000e-01], [-3.32929341e+03, -2.66404767e+04, -1.40000000e-01], [-3.32871964e+03, -2.66454436e+04, -1.90000000e-01], [-3.32814587e+03, -2.66504106e+04, -2.10000000e-01], [-3.32757211e+03, -2.66553776e+04, -2.00000000e-01], [-3.32699834e+03, -2.66603445e+04, -2.10000000e-01], [-3.32642458e+03, -2.66653115e+04, -2.10000000e-01], [-3.32585081e+03, -2.66702785e+04, -2.00000000e-01], [-3.32527705e+03, -2.66752454e+04, -2.10000000e-01], [-3.32470328e+03, -2.66802124e+04, -2.00000000e-01], [-3.32412952e+03, -2.66851794e+04, -2.00000000e-01], [-3.32355575e+03, -2.66901464e+04, -2.00000000e-01], [-3.32298199e+03, -2.66951133e+04, -2.00000000e-01], [-3.32240822e+03, -2.67000803e+04, -2.00000000e-01], [-3.32183446e+03, -2.67050473e+04, -2.20000000e-01], [-3.32126069e+03, -2.67100142e+04, -2.20000000e-01], [-3.32068693e+03, -2.67149812e+04, -2.30000000e-01], [-3.32011316e+03, -2.67199482e+04, -2.20000000e-01], [-3.31953940e+03, -2.67249151e+04, -2.30000000e-01], [-3.31896563e+03, -2.67298821e+04, -2.30000000e-01], [-3.31839187e+03, -2.67348491e+04, -2.30000000e-01], [-3.31781810e+03, -2.67398161e+04, -2.20000000e-01], [-3.31724433e+03, -2.67447830e+04, -2.10000000e-01], [-3.31667057e+03, -2.67497500e+04, -2.10000000e-01], [-3.31609680e+03, -2.67547170e+04, -2.10000000e-01], [-3.31552304e+03, -2.67596839e+04, -2.00000000e-01], [-3.31494927e+03, -2.67646509e+04, -1.70000000e-01], [-3.31437551e+03, -2.67696179e+04, 6.40000000e-01], [-3.31380174e+03, -2.67745849e+04, 1.83000000e+00], [-3.31322798e+03, -2.67795518e+04, 1.99000000e+00], [-3.31265421e+03, -2.67845188e+04, 2.04000000e+00], [-3.31208045e+03, -2.67894858e+04, 2.24000000e+00], [-3.31150668e+03, -2.67944527e+04, 2.66000000e+00], [-3.31093292e+03, -2.67994197e+04, 2.75000000e+00], [-3.31035915e+03, -2.68043867e+04, 2.80000000e+00], [-3.30978539e+03, -2.68093536e+04, 2.83000000e+00], [-3.30921162e+03, -2.68143206e+04, 2.88000000e+00], [-3.30863786e+03, -2.68192876e+04, 2.93000000e+00], [-3.30806409e+03, -2.68242546e+04, 2.97000000e+00], [-3.30749033e+03, -2.68292215e+04, 2.99000000e+00], [-3.30691656e+03, -2.68341885e+04, 2.98000000e+00], [-3.30634280e+03, -2.68391555e+04, 2.98000000e+00], [-3.30576903e+03, -2.68441224e+04, 3.01000000e+00], [-3.30519526e+03, -2.68490894e+04, 3.04000000e+00], [-3.30462150e+03, -2.68540564e+04, 3.07000000e+00], [-3.30404773e+03, -2.68590233e+04, 3.09000000e+00], [-3.30347397e+03, -2.68639903e+04, 4.54000000e+00], [-3.30290020e+03, -2.68689573e+04, 4.61000000e+00], [-3.30232644e+03, -2.68739243e+04, 5.01000000e+00], [-3.30175267e+03, -2.68788912e+04, 6.72000000e+00], [-3.30117891e+03, -2.68838582e+04, 7.74000000e+00], [-3.30060514e+03, -2.68888252e+04, 8.75000000e+00], [-3.30003138e+03, -2.68937921e+04, 8.90000000e+00], [-3.29945761e+03, -2.68987591e+04, 8.73000000e+00], [-3.29888385e+03, -2.69037261e+04, 7.38000000e+00], [-3.29831008e+03, -2.69086930e+04, 5.91000000e+00], [-3.29773632e+03, -2.69136600e+04, 3.62000000e+00], [-3.29716255e+03, -2.69186270e+04, 1.06000000e+00], [-3.29658879e+03, -2.69235940e+04, 5.00000000e-01], [-3.29601502e+03, -2.69285609e+04, 2.00000000e-01], [-3.29544126e+03, -2.69335279e+04, 2.80000000e-01], [-3.29486749e+03, -2.69384949e+04, 2.60000000e-01], [-3.29429372e+03, -2.69434618e+04, 1.10000000e-01], [-3.29371996e+03, -2.69484288e+04, 1.90000000e-01], [-3.29314619e+03, -2.69533958e+04, 1.80000000e-01], [-3.29257243e+03, -2.69583628e+04, 2.10000000e-01], [-3.29199866e+03, -2.69633297e+04, 3.00000000e-01], [-3.29142490e+03, -2.69682967e+04, 2.10000000e-01], [-3.29085113e+03, -2.69732637e+04, 6.00000000e-02]])
LineString(point3d).wkt
'LINESTRING Z (-3367.73567716 -26307.68964812 -0.12, -3367.161911906202 -26312.65661836689 -0.09, -3366.588146652404 -26317.62358861379 -0.08, -3366.014381398606 -26322.59055886068 -0.1, -3365.440616144809 -26327.55752910758 -0.13, -3364.866850891011 -26332.52449935447 -0.15, -3364.293085637213 -26337.49146960137 -0.12, -3363.719320383415 -26342.45843984826 0, -3363.145555129617 -26347.42541009515 -0.02, -3362.571789875819 -26352.39238034205 -0.08, -3361.998024622022 -26357.35935058894 -0.34, -3361.424259368224 -26362.32632083584 -0.06, -3360.850494114426 -26367.29329108273 0.06, -3360.276728860628 -26372.26026132963 0.08, -3359.702963606831 -26377.22723157652 -0.06, -3359.129198353033 -26382.19420182341 -0.14, -3358.555433099235 -26387.16117207031 -0.19, -3357.981667845437 -26392.1281423172 -0.19, -3357.407902591639 -26397.0951125641 -0.19, -3356.834137337841 -26402.06208281099 -0.2, -3356.260372084043 -26407.02905305789 0.03, -3355.686606830246 -26411.99602330478 1.3, -3355.112841576448 -26416.96299355168 2.86, -3354.53907632265 -26421.92996379857 4.72, -3353.965311068852 -26426.89693404546 8.17, -3353.391545815055 -26431.86390429236 8.84, -3352.817780561257 -26436.83087453925 8.84, -3352.244015307459 -26441.79784478615 8.57, -3351.670250053661 -26446.76481503304 6.8, -3351.096484799863 -26451.73178527994 5.7, -3350.522719546065 -26456.69875552683 4.69, -3349.948954292267 -26461.66572577372 2.93, -3349.37518903847 -26466.63269602062 2.77, -3348.801423784672 -26471.59966626751 2.73, -3348.227658530874 -26476.56663651441 2.82, -3347.653893277076 -26481.5336067613 2.93, -3347.080128023279 -26486.5005770082 2.89, -3346.506362769481 -26491.46754725509 2.85, -3345.932597515683 -26496.43451750198 2.81, -3345.358832261885 -26501.40148774888 2.79, -3344.785067008087 -26506.36845799577 2.77, -3344.211301754289 -26511.33542824267 2.75, -3343.637536500491 -26516.30239848956 2.72, -3343.063771246694 -26521.26936873646 2.71, -3342.490005992896 -26526.23633898335 2.7, -3341.916240739098 -26531.20330923025 2.64, -3341.3424754853 -26536.17027947714 2.61, -3340.768710231503 -26541.13724972404 2.56, -3340.194944977705 -26546.10421997093 2.52, -3339.621179723907 -26551.07119021782 2.47, -3339.047414470109 -26556.03816046472 2.45, -3338.473649216311 -26561.00513071161 2.15, -3337.899883962513 -26565.97210095851 0.62, -3337.326118708716 -26570.9390712054 0.03, -3336.752353454918 -26575.9060414523 -0.36, -3336.17858820112 -26580.87301169919 -0.41, -3335.604822947322 -26585.83998194609 -0.4, -3335.031057693524 -26590.80695219298 -0.37, -3334.457292439727 -26595.77392243988 -0.34, -3333.883527185929 -26600.74089268677 -0.28, -3333.309761932131 -26605.70786293366 -0.24, -3332.735996678333 -26610.67483318056 -0.19, -3332.162231424535 -26615.64180342745 -0.15, -3331.588466170737 -26620.60877367435 -0.12, -3331.01470091694 -26625.57574392124 -0.13, -3330.440935663142 -26630.54271416814 -0.15, -3329.867170409344 -26635.50968441503 -0.17, -3329.293405155546 -26640.47665466192 -0.14, -3328.719639901748 -26645.44362490882 -0.19, -3328.145874647951 -26650.41059515571 -0.21, -3327.572109394153 -26655.37756540261 -0.2, -3326.998344140355 -26660.3445356495 -0.21, -3326.424578886557 -26665.3115058964 -0.21, -3325.850813632759 -26670.27847614329 -0.2, -3325.277048378961 -26675.24544639018 -0.21, -3324.703283125164 -26680.21241663708 -0.2, -3324.129517871366 -26685.17938688397 -0.2, -3323.555752617568 -26690.14635713087 -0.2, -3322.98198736377 -26695.11332737776 -0.2, -3322.408222109972 -26700.08029762466 -0.2, -3321.834456856175 -26705.04726787155 -0.22, -3321.260691602377 -26710.01423811845 -0.22, -3320.686926348579 -26714.98120836534 -0.23, -3320.113161094781 -26719.94817861223 -0.22, -3319.539395840983 -26724.91514885913 -0.23, -3318.965630587185 -26729.88211910602 -0.23, -3318.391865333388 -26734.84908935292 -0.23, -3317.81810007959 -26739.81605959981 -0.22, -3317.244334825792 -26744.78302984671 -0.21, -3316.670569571994 -26749.7500000936 -0.21, -3316.096804318197 -26754.71697034049 -0.21, -3315.523039064399 -26759.68394058739 -0.2, -3314.949273810601 -26764.65091083428 -0.17, -3314.375508556803 -26769.61788108118 0.64, -3313.801743303005 -26774.58485132807 1.83, -3313.227978049207 -26779.55182157497 1.99, -3312.654212795409 -26784.51879182186 2.04, -3312.080447541612 -26789.48576206875 2.24, -3311.506682287814 -26794.45273231565 2.66, -3310.932917034016 -26799.41970256254 2.75, -3310.359151780218 -26804.38667280944 2.8, -3309.785386526421 -26809.35364305633 2.83, -3309.211621272623 -26814.32061330323 2.88, -3308.637856018825 -26819.28758355012 2.93, -3308.064090765027 -26824.25455379702 2.97, -3307.490325511229 -26829.22152404391 2.99, -3306.916560257431 -26834.18849429081 2.98, -3306.342795003633 -26839.1554645377 2.98, -3305.769029749836 -26844.1224347846 3.01, -3305.195264496038 -26849.08940503149 3.04, -3304.62149924224 -26854.05637527838 3.07, -3304.047733988442 -26859.02334552528 3.09, -3303.473968734645 -26863.99031577217 4.54, -3302.900203480847 -26868.95728601907 4.61, -3302.326438227049 -26873.92425626596 5.01, -3301.752672973251 -26878.89122651286 6.72, -3301.178907719453 -26883.85819675975 7.74, -3300.605142465655 -26888.82516700665 8.75, -3300.031377211857 -26893.79213725354 8.9, -3299.45761195806 -26898.75910750043 8.73, -3298.883846704262 -26903.72607774733 7.38, -3298.310081450464 -26908.69304799422 5.91, -3297.736316196666 -26913.66001824112 3.62, -3297.162550942869 -26918.62698848801 1.06, -3296.588785689071 -26923.59395873491 0.5, -3296.015020435273 -26928.5609289818 0.2, -3295.441255181475 -26933.52789922869 0.28, -3294.867489927677 -26938.49486947559 0.26, -3294.293724673879 -26943.46183972248 0.11, -3293.719959420082 -26948.42880996938 0.19, -3293.146194166284 -26953.39578021627 0.18, -3292.572428912486 -26958.36275046317 0.21, -3291.998663658688 -26963.32972071006 0.3, -3291.42489840489 -26968.29669095695 0.21, -3290.851133151093 -26973.26366120385 0.06)'
import json
from shapely.geometry import mapping, LineString
j = {
"type": "FeatureCollection",
"name": "area",
"crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::6677" } },
"features": [
{ "type": "Feature", "properties": { "id": 1 }, "geometry":mapping( LineString(point3d) ) }
]
}
import pprint
pprint.pprint(j)
{'crs': {'properties': {'name': 'urn:ogc:def:crs:EPSG::6677'}, 'type': 'name'}, 'features': [{'geometry': {'coordinates': ((-3367.73567716, -26307.68964812, -0.12), (-3367.161911906202, -26312.65661836689, -0.09), (-3366.5881466524042, -26317.623588613787, -0.08), (-3366.0143813986065, -26322.59055886068, -0.1), (-3365.4406161448087, -26327.557529107577, -0.13), (-3364.866850891011, -26332.52449935447, -0.15), (-3364.2930856372127, -26337.491469601366, -0.12), (-3363.719320383415, -26342.45843984826, 0.0), (-3363.145555129617, -26347.425410095155, -0.02), (-3362.5717898758194, -26352.392380342048, -0.08), (-3361.9980246220216, -26357.359350588944, -0.34), (-3361.424259368224, -26362.326320835837, -0.06), (-3360.850494114426, -26367.293291082733, 0.06), (-3360.2767288606283, -26372.260261329626, 0.08), (-3359.7029636068305, -26377.22723157652, -0.06), (-3359.1291983530327, -26382.194201823415, -0.14), (-3358.555433099235, -26387.161172070308, -0.19), (-3357.9816678454367, -26392.128142317204, -0.19), (-3357.407902591639, -26397.095112564097, -0.19), (-3356.834137337841, -26402.062082810993, -0.2), (-3356.2603720840434, -26407.029053057886, 0.03), (-3355.6866068302456, -26411.996023304782, 1.3), (-3355.112841576448, -26416.962993551675, 2.86), (-3354.53907632265, -26421.92996379857, 4.72), (-3353.9653110688523, -26426.896934045464, 8.17), (-3353.3915458150545, -26431.863904292357, 8.84), (-3352.8177805612568, -26436.830874539253, 8.84), (-3352.244015307459, -26441.797844786146, 8.57), (-3351.6702500536608, -26446.764815033042, 6.8), (-3351.096484799863, -26451.731785279935, 5.7), (-3350.522719546065, -26456.69875552683, 4.69), (-3349.9489542922674, -26461.665725773724, 2.93), (-3349.3751890384697, -26466.63269602062, 2.77), (-3348.801423784672, -26471.599666267513, 2.73), (-3348.227658530874, -26476.56663651441, 2.82), (-3347.6538932770763, -26481.533606761303, 2.93), (-3347.0801280232786, -26486.5005770082, 2.89), (-3346.506362769481, -26491.46754725509, 2.85), (-3345.932597515683, -26496.434517501984, 2.81), (-3345.358832261885, -26501.40148774888, 2.79), (-3344.785067008087, -26506.368457995773, 2.77), (-3344.2113017542893, -26511.33542824267, 2.75), (-3343.6375365004915, -26516.302398489563, 2.72), (-3343.0637712466937, -26521.26936873646, 2.71), (-3342.490005992896, -26526.23633898335, 2.7), (-3341.916240739098, -26531.203309230248, 2.64), (-3341.3424754853004, -26536.17027947714, 2.61), (-3340.7687102315026, -26541.137249724037, 2.56), (-3340.194944977705, -26546.10421997093, 2.52), (-3339.6211797239066, -26551.071190217823, 2.47), (-3339.047414470109, -26556.03816046472, 2.45), (-3338.473649216311, -26561.005130711612, 2.15), (-3337.8998839625133, -26565.97210095851, 0.62), (-3337.3261187087155, -26570.9390712054, 0.03), (-3336.7523534549177, -26575.906041452297, -0.36), (-3336.17858820112, -26580.87301169919, -0.41), (-3335.604822947322, -26585.839981946086, -0.4), (-3335.0310576935244, -26590.80695219298, -0.37), (-3334.4572924397266, -26595.773922439876, -0.34), (-3333.883527185929, -26600.74089268677, -0.28), (-3333.3097619321306, -26605.707862933665, -0.24), (-3332.735996678333, -26610.674833180557, -0.19), (-3332.162231424535, -26615.64180342745, -0.15), (-3331.5884661707373, -26620.608773674347, -0.12), (-3331.0147009169395, -26625.57574392124, -0.13), (-3330.4409356631418, -26630.542714168136, -0.15), (-3329.867170409344, -26635.50968441503, -0.17), (-3329.293405155546, -26640.476654661925, -0.14), (-3328.7196399017485, -26645.443624908818, -0.19), (-3328.1458746479507, -26650.410595155714, -0.21), (-3327.572109394153, -26655.377565402607, -0.2), (-3326.9983441403547, -26660.344535649503, -0.21), (-3326.424578886557, -26665.311505896396, -0.21), (-3325.850813632759, -26670.27847614329, -0.2), (-3325.2770483789614, -26675.245446390185, -0.21), (-3324.7032831251636, -26680.212416637078, -0.2), (-3324.129517871366, -26685.179386883974, -0.2), (-3323.555752617568, -26690.146357130867, -0.2), (-3322.9819873637703, -26695.113327377763, -0.2), (-3322.4082221099725, -26700.080297624656, -0.2), (-3321.8344568561747, -26705.047267871552, -0.22), (-3321.260691602377, -26710.014238118445, -0.22), (-3320.6869263485787, -26714.98120836534, -0.23), (-3320.113161094781, -26719.948178612234, -0.22), (-3319.539395840983, -26724.91514885913, -0.23), (-3318.9656305871854, -26729.882119106023, -0.23), (-3318.3918653333876, -26734.849089352916, -0.23), (-3317.81810007959, -26739.816059599812, -0.22), (-3317.244334825792, -26744.783029846705, -0.21), (-3316.6705695719943, -26749.7500000936, -0.21), (-3316.0968043181965, -26754.716970340494, -0.21), (-3315.5230390643987, -26759.68394058739, -0.2), (-3314.949273810601, -26764.650910834283, -0.17), (-3314.3755085568027, -26769.61788108118, 0.64), (-3313.801743303005, -26774.584851328073, 1.83), (-3313.227978049207, -26779.55182157497, 1.99), (-3312.6542127954094, -26784.51879182186, 2.04), (-3312.0804475416116, -26789.485762068754, 2.24), (-3311.506682287814, -26794.45273231565, 2.66), (-3310.932917034016, -26799.419702562544, 2.75), (-3310.3591517802183, -26804.38667280944, 2.8), (-3309.7853865264206, -26809.353643056333, 2.83), (-3309.211621272623, -26814.32061330323, 2.88), (-3308.637856018825, -26819.28758355012, 2.93), (-3308.064090765027, -26824.254553797018, 2.97), (-3307.490325511229, -26829.22152404391, 2.99), (-3306.9165602574312, -26834.188494290807, 2.98), (-3306.3427950036335, -26839.1554645377, 2.98), (-3305.7690297498357, -26844.122434784596, 3.01), (-3305.195264496038, -26849.08940503149, 3.04), (-3304.62149924224, -26854.056375278382, 3.07), (-3304.0477339884424, -26859.02334552528, 3.09), (-3303.4739687346446, -26863.99031577217, 4.54), (-3302.900203480847, -26868.957286019067, 4.61), (-3302.326438227049, -26873.92425626596, 5.01), (-3301.752672973251, -26878.891226512857, 6.72), (-3301.178907719453, -26883.85819675975, 7.74), (-3300.6051424656553, -26888.825167006646, 8.75), (-3300.0313772118575, -26893.79213725354, 8.9), (-3299.4576119580597, -26898.759107500435, 8.73), (-3298.883846704262, -26903.726077747328, 7.38), (-3298.310081450464, -26908.693047994224, 5.91), (-3297.7363161966664, -26913.660018241117, 3.62), (-3297.1625509428686, -26918.62698848801, 1.06), (-3296.588785689071, -26923.593958734906, 0.5), (-3296.015020435273, -26928.5609289818, 0.2), (-3295.441255181475, -26933.527899228695, 0.28), (-3294.867489927677, -26938.494869475588, 0.26), (-3294.2937246738793, -26943.461839722484, 0.11), (-3293.7199594200815, -26948.428809969377, 0.19), (-3293.1461941662837, -26953.395780216273, 0.18), (-3292.572428912486, -26958.362750463166, 0.21), (-3291.998663658688, -26963.329720710062, 0.3), (-3291.4248984048904, -26968.296690956955, 0.21), (-3290.8511331510927, -26973.263661203848, 0.06)), 'type': 'LineString'}, 'properties': {'id': 1}, 'type': 'Feature'}], 'name': 'area', 'type': 'FeatureCollection'}
with open("sections.geojson", "w") as f:
json.dump(j, f)
import geopandas as gpd
gdf = gpd.read_file("sections.geojson")
gdf
id | geometry | |
---|---|---|
0 | 1 | LINESTRING Z (-3367.73567716 -26307.68964812 -... |
point = np.array( gdf.geometry[0].coords[:] )
# drop z
pointxy = point[:,:2]
L = np.linalg.norm( pointxy - pointxy[0],ord=2,axis=1 )
z = point[:,-1]
f = hv.Curve((L,z)).options(width=400, height=300)
hv.save(f, 'figsection.html')
f