ClassifyInspections
inspections.ClassifyInspections()
Classificeert inspectieresultaten om weer te geven in de viewer.
Attributes
Name | Type | Description |
---|---|---|
data_adapter | DataAdapter | DataAdapter object |
df_in | Optional[pd.DataFrame | gpd.GeoDataFrame] | None | Input DataFrame om te classificeren |
df_styling | Optional[pd.DataFrame] | None | Input DataFrame met opmaak informatie |
df_default_styling | Optional[pd.DataFrame] | None | DataFrame met standaard opmaak informatie, wordt gebruikt als er geen opmaak informatie is meegegeven Beschikbaar via get_default_styling() en te vervangen met set_default_styling(df) |
df_out | Optional[gpd.GeoDataFrame] | None | Output DataFrame containing the filtered DataFrame. |
df_legend_out | Optional[pd.DataFrame] | None | Output DataFrame containing the legend information. |
styling_schema | ClassVar[dict[str, str]] | Schema DataFrame met de opmaak informatie |
Notes
Het classificeren van inspectieresultaten gebeurt op basis van de kolom ‘classify_column’ die is opgegeven in de global variables. De classificatie wordt gedaan op basis van de kolommen ‘upper_boundary’ en ‘lower_boundary’ in de opmaak DataFrame, deze wordt meegegeven als tweede input. Waardes die niet geclassificeerd kunnen worden, krijgen de opmaak van de rij zonder waardes in de upper_boundary en lower_boundary kolommen. Als er geen opmaak DataFrame wordt meegegeven, wordt de standaard opmaak gebruikt voor alle waardes. De standaard opmaak is op te halen met get_default_styling() en te vervangen met set_default_styling(df).
Er zijn drie manier om geodata mee te geven. Deze wordt gebruik voor de opmaak. Alle projecties worden ondersteund, maar wordt omgezet naar EPSG:4326 voor de viewer.
In de Global Variables kan de projectie worden aangepast, standaard is EPSG:4326, alle andere projecties worden omgezet naar deze projectie.
- Bij het mee geven van een GeoDataFrame, wordt de opmaak toegepast op de geometrie van het GeoDataFrame.
- Als er een ‘geometry’ kolom is in de DataFrame, wordt deze gebruikt om een GeoDataFrame te maken.
- Indien beide bovenstaande niet het geval is, wordt gezocht naar een kolom met x en met y co�rdinaten en deze wordt gebruikt om een GeoDataFrame te maken.
Het type geometry wordt automatisch bepaald, maar kan ook meegegeven worden in de Global Variables. Slechts een type per tabel is toe gestaan.
De opties zijn:
- Polygon
- Polyline
- CircleMarker
- Marker
De output DataFrame bevat de opmaak informatie die is toegepast op de inspectieresultaten. Als er geen opmaak informatie is meegegeven, wordt de standaard opmaak gebruikt. De output kan een met alleen geclassificeerde resultaten of twee DataFrames met de inspectieresultaten en een met de legenda informatie. Ontbrekende kolommen in de opmaak DataFrame worden aangevuld met de standaard opmaak.
Methods
Name | Description |
---|---|
get_default_styling | Haal de standaard opmaak op. |
get_possible_styling | Haal de mogelijke kolommen op voor de opmaak. |
log_exceptions | Stuurt exceptions eerst naar de logger van de DataAdapter |
run | Runt het classificeren van inspectieresultaten om vervolgens weer te geven in de viewer. |
set_default_styling | Vervangt de default styling. |
get_default_styling
inspections.ClassifyInspections.get_default_styling()
Haal de standaard opmaak op.
Returns: pd.DataFrame: Het DataFrame met de standaard opmaak.
get_possible_styling
inspections.ClassifyInspections.get_possible_styling(type=None,
=False,
dict_output )
Haal de mogelijke kolommen op voor de opmaak.
Parameters
Name | Type | Description | Default |
---|---|---|---|
type | str | None | Type van de laag, indien None worden alle kolommen opgehaald. Mogelijke waardes zijn: Polyline, Polygon, Marker, CircleMarker | None |
dict_output | bool | Als True, wordt een dictionary met de kolommen en hun type terug gegeven. Anders wordt een lijst met de kolommen terug gegeven. | False |
Returns
Name | Type | Description |
---|---|---|
list[str] | dict[str, dict] | Een lijst met de mogelijke kolommen of een dictionary met de kolommen en hun type. |
Notes
De standaard waardes & mogelijke opties zijn:
Polyline | |||
---|---|---|---|
Option | Type | Default | Description |
color | string | #9e9e9e | hexcode van lijn |
weight | number | 3 | breedte lijn |
opacity | number | 1 | transparantie van lijn |
dashArray | string | null | array voor dashed lijn |
Polygon | |||
---|---|---|---|
Option | Type | Default | Description |
color | string | #9e9e9e | hexcode van stroke |
weight | number | 3 | breedte stroke |
opacity | number | 1 | transparantie van stroke |
dashArray | string | null | array voor dashed stroke |
fillColor | string | #9e9e9e | hexcode van fill |
fillOpacity | number | 1 | transparantie van fill |
Marker | |||
---|---|---|---|
Option | Type | Default | Description |
color | string | #9e9e9e | hexcode van stroke |
opacity | number | 1 | transparantie van marker |
fillColor | string | #9e9e9e | hexcode van fill |
SVGname | string | null | naam van de marker |
CircleMarker | |||
---|---|---|---|
Option | Type | Default | Description |
color | string | #9e9e9e | hexcode van stroke |
weight | number | 3 | breedte stroke |
opacity | number | 1 | transparantie van stroke |
dashArray | string | null | array voor dashed stroke |
fillColor | string | #9e9e9e | hexcode van fill |
fillOpacity | number | 1 | transparantie van fill |
radius | number | 10 | groote van circle |
Default waardes worden hier getoond, maar deze hebben geen invloed op de output. Om default aan te passen gebruik set_default_styling(df)
.
log_exceptions
inspections.ClassifyInspections.log_exceptions(method)
Stuurt exceptions eerst naar de logger van de DataAdapter
run
input, output) inspections.ClassifyInspections.run(
Runt het classificeren van inspectieresultaten om vervolgens weer te geven in de viewer.
Parameters
Name | Type | Description | Default |
---|---|---|---|
input | str | list[str] | Naam van de Data Adapters met inspectieresultaten en legenda met opmaak (indien gewenst), in die volgorde. | required |
output | str | list[str] | Naam van Data adapter voor de output | required |
Notes
De input DataAdapters moet minimaal ‘Inspectieresultaten’ bevatten die worden geclassificeerd. De classificatie wordt gedaan op basis van de kolom ‘classify_column’ opgegeven in de global variables. Deze classificatiewaardes kunnen zowel numeriek zijn als text.
Indien gewenst kan ook opmaak opties worden meegegeven. Als deze niet meegegeven wordt, wordt de standaard opmaak gebruikt. Deze is op te halen met get_default_styling() en te vervangen (geavanceerd) met set_default_styling(df).
Deze moet de volgende kolommen bevatten:
- ‘color’: kleur van de classificatie in hexadecimaal formaat
- ‘lower_boundary’: ondergrens van de classificatie waarde. De inspectieresultaten moeten groter of gelijk zijn.
De classificatie in ‘lower_boundary’ en ‘classify_column’ moet van hetzelfde type zijn. Als de classificatie op basis van een waarde is, mag ook de volgende kolom aanwezig zijn:
- ‘upper_boundary’: bovengrens van de classificatie
Bij text waardes wordt standaard tijdens de classificatie gekeken of de waarde identiek is aan de classificatie. Door de global variables kan dit ook worden aangepast naar een match_text_on
check. De opties zijn:
- ‘contains’: de classificatie waarde moet in de inspectieresultaten staan
- ‘equals’: de classificatie waarde moet gelijk zijn aan de inspectieresultaten
- ‘startswith’: de classificatie waarde moet aan het begin van de inspectieresultaten staan
- ‘endswith’: de classificatie waarde moet aan het einde van de inspectieresultaten staan
Naast de verplichte kolommen zijn ook een aantal die ook worden meegenomen in de output. Indien deze niet aanwezig zijn, worden ze ook niet meegenomen in de output.
Dit zijn:
- ‘name’: Naam van de categorie
- ‘description’: Omschrijving van de categorie
- ‘symbol’: Symbool van de categorie
Raises
Name | Type | Description |
---|---|---|
AssertionError | Als er maar ��n input DataAdapter wordt meegegeven als string in plaats van een lijst met minimaal twee items. | |
KeyError | Als de kolom die gebruikt moet worden voor classificatie niet aanwezig is in de input data. | |
UserWarning | Als de classificatie niet gelukt is, omdat de kolom die gebruikt moet worden voor classificatie geen tekst of getal is. |
set_default_styling
=False) inspections.ClassifyInspections.set_default_styling(df, permanent
Vervangt de default styling. Parameters: df (pandas.DataFrame): Het DataFrame met de nieuwe default styling. permanent (bool, optional): Indien True, vervangt de default styling in het bestand. Standaard is False. Returns: None