import os import json import zipfile import pydeck as pdk import pandas as pd class Create_map: def __init__(self): self.path_file = '' def create(self, path_file): self.path_file = path_file carpeta_para_guardar = path_file.split('.')[0] nombre_archivo = carpeta_para_guardar.rsplit('/',1)[1] try: os.mkdir(carpeta_para_guardar) except: pass archivo, ext = os.path.splitext(path_file) if ext == '.zip': with zipfile.ZipFile(path_file, "r") as zip_ref: zip_ref.extractall(carpeta_para_guardar) carpeta_listada = os.listdir(carpeta_para_guardar) else: carpeta_listada = [path_file.rsplit('/',1)[1]] las_layers = [] for element in carpeta_listada: geojson_layer = pdk.Layer('GeoJsonLayer', data=element, get_fill_color='[200, 30, 0, 160]', get_line_color=[255, 255, 255], stroked=True, filled=True, lineWidthScale=5, lineWidthMinPixels=2) las_layers.append(geojson_layer) view_state = pdk.ViewState(latitude=40.4168, longitude=-3.7038, zoom=10, bearing=0, pitch=0) r = pdk.Deck(layers=las_layers, initial_view_state=view_state) r.to_html(carpeta_para_guardar + '/{}_map.html'.format(nombre_archivo))