gemgis.utils.convert_to_gempy_df#

gemgis.utils.convert_to_gempy_df(gdf: geopandas.geodataframe.GeoDataFrame, dem: Union[rasterio.io.DatasetReader, numpy.ndarray] = None, extent: List[Union[int, float]] = None) pandas.core.frame.DataFrame#

Converting a GeoDataFrame into a Pandas DataFrame ready to be read in for GemPy

Parameters
  • gdf (gpd.geodataframe.GeoDataFrame) – GeoDataFrame containing spatial information, formation names and orientation values

  • dem (Union[np.ndarray, rasterio.io.DatasetReader]) – NumPy ndarray or rasterio object containing the height values

  • extent (List[Union[float,int]) – List containing the extent of the np.ndarray, must be provided in the same CRS as the gdf, e.g. extent=[0, 972, 0, 1069]

Returns

df – Interface or orientations DataFrame ready to be read in for GemPy

Return type

pd.DataFrame

New in version 1.0.x.

Example

>>> # Loading Libraries and File
>>> import gemgis as gg
>>> import geopandas as gpd
>>> import rasterio
>>> gdf = gpd.read_file(filename='file.shp')
>>> gdf
    id      formation   geometry
0   None    Ton         POINT (19.150 293.313)
1   None    Ton         POINT (61.934 381.459)
2   None    Ton         POINT (109.358 480.946)
3   None    Ton         POINT (157.812 615.999)
4   None    Ton         POINT (191.318 719.094)
>>> # Loading Digital Elevation Model
>>> dem = rasterio.open(fp='dem.tif')
>>> dem
<open DatasetReader name='dem.tif' mode='r'>
>>> # Defining extent
>>> extent = [0, 972, 0, 1069]
>>> # Converting GeoDataFrame to DataFrame
>>> df = gg.utils.convert_to_gempy_df(gdf=gdf, dem=dem, extent=extent)
>>> df
    formation   X       Y       Z
0   Ton         19.15   293.31  364.99
1   Ton         61.93   381.46  400.34
2   Ton         109.36  480.95  459.55
3   Ton         157.81  616.00  525.69
4   Ton         191.32  719.09  597.63