Skip to content

Instantly share code, notes, and snippets.

View LtGlahn's full-sized avatar

Jan Kristian Jensen LtGlahn

  • Norwegian Public Road Adminstration
  • Trondheim, Norway
  • X @LtGlahn
View GitHub Profile
@LtGlahn
LtGlahn / avikdemo.py
Last active November 8, 2023 22:58
Demo på hvordan du kan koble regneark fra fagsystem med NVDB data
import pandas as pd
import nvdbapiv3
# Dette regnearket leser vi typisk med
# pd.read_excel( 'filnavn.xlsx', sheet_name='Navn på fane med data',
# skiprows=6 )
# skiprows = antall linjer med drit i headeren på regnearket før raden med kolonnenavn
# Men her faker vi et regneark med to rader
statusregneark = pd.DataFrame([ { 'Navn' : 'R70022 - Fv. 237 Desetvegen, Osmoen-Deset',
'Status i fagsystem' : 'Planstadiet',
@LtGlahn
LtGlahn / nvdb2excel.md
Created November 8, 2023 22:14
Superenkel oppskrift for å få NVDB - data inn i Excel med bruk av dette python-biblioteket https://github.com/LtGlahn/nvdbapi-V3

NVDB data som regneark

Superenkel oppskrift for å få NVDB - data inn i Excel med bruk av dette python-biblioteket

https://github.com/LtGlahn/nvdbapi-V3

Start python versjon 3, i python shell:

# Merk bindestrek 
pip install nvdbapi-v3
@LtGlahn
LtGlahn / innloggingdemo.py
Last active January 2, 2024 09:15
datafangst20demo
"""
Demo innlogging Datafangst 2.0.
Innlogging dokumentasjon
https://nvdbapiles-v3.atlas.vegvesen.no/dokumentasjon/openapi/#/Autentisering/post_auth_login
Datafangst dokumentasjon
https://datafangst-api-gateway.atlas.vegvesen.no/
"""
import requests
import getpass
@LtGlahn
LtGlahn / gjenopprett.py
Created July 31, 2023 07:26
Gjenoppretter objekter som er fjernet ved inkurie
import json
from time import sleep
from datetime import datetime
from types import SimpleNamespace
import STARTHER
import nvdbapiv3
import skrivnvdb
def lagSkrivemal( backupdata, nvdbId=None, oppdaterVersjon=None ):
import requests
import json
import sys
from datetime import datetime, timedelta
# import pandas as pd
# import geopandas as gpd
# from shapely.geometry import Point
# from shapely import wkt
@LtGlahn
LtGlahn / nvdbdata2geojson.md
Last active January 12, 2023 09:10
Lagre NVDB data som geojson i ulike koordinatsystem

Geojson - strengt tatt lon, lat koordinater

Geojson skal i følge spesifikasjonen strengt tatt være (lon, lat) i koordinatsystem EPSG:4326. Uten å ta opp diskusjonen om hva som er korrekt rekkefølge så må vi bytte om på koordinatene fra LES, som kommer i rekkefølgen (lat, lon)

import pandas as pd
import geopandas as gpd 
@LtGlahn
LtGlahn / swapLatLon.md
Last active January 11, 2023 21:46
Bytt rekkefølge på X,Y - koordinater (lat, lon) => (lon, lat)

(lat,lon) eller (lon,lat) - slik bytter du rekkefølge i shapely geometriske objekter

Dette med rekkefølgen (lon,lat) eller (lat,lon) for koordinatsystemet EPSG:4326 er traurig og fruktesløs diskusjon. Her er kode for å flippe mellom disse to variantene, dvs bytte (X,Y) => (Y,X).

Geometrien her er shapely geometriobjekter.

Denne oppskriften funket tidligere på 3D objekter uavhengig av geometritype, det kan godt hende det funker fint for din shapely-versjon:

@LtGlahn
LtGlahn / fra3Dtil2Dshapely.md
Last active September 17, 2023 08:30
Fra 3D til 2D shapely geometriobjekter

Konverterer python shapely-objekter (i 2D eller 3D) til 2D

from shapely import wkb, wkt
# myGeom er her et shapely-objekt av hvilken som helst geometritype, med 2D eller 3D koordinater. 
my2Dgeom = wkb.loads( wkb.dumps( myGeom , output_dimension=2  ))

Trickset her er at wkb.dumps (som returnerer dataformatet Well Known Binary )

import requests
from datetime import datetime
from time import sleep
import pandas as pd
import geopandas as gpd
data = []
# url = 'https://hjortevilt2-utv.miljodirektoratet.no/api/v0/fallvilt'
url = 'https://www.hjorteviltregisteret.no/api/v0/fallvilt'
@LtGlahn
LtGlahn / sjekkVDtall.py
Last active August 24, 2022 14:00
henter data fra NVDB api LES for å kontrollere VD sine tall
import pandas as pd
import geopandas as gpd
import STARTHER
import nvdbapiv3
import nvdbgeotricks
if __name__ == '__main__':