Example Usage Applied to Fracture Data - Åland Islands Networks

Data fromMulti-scale fracture networks at Åland Islands - data analysisby Nikolas Ovaskainen

Fracture data and networks is another type of geospatial product which can use the Hough Transform method. Here we see mapped segments from bedrock in Åland Islands, Finland from Ovaskainen et al., 2023.

DOI

  1. Load in a geoJSON format which also performs preprocessing.

  2. Perform the Hough Transform

  3. Visualize the Results

[13]:
#Let's begin by loading the module
import linkinglines as ll

# Load the example dataset
dikeset=ll.readFile('../data/example_getaberget_20m_9_traces.geojson', preprocess=True)

3627 dropped for not being straight

The next step is to perform the Hough Transform

Besides the data the input in the hough transform code is the center (xc,yc) which is assumed to be the mean of the X and Y coordinates. It can be set arbitrarily. You may wish to set this to investigate structures in your dataset. But most people will use the default settings.

[14]:

dikeset, xc, yc=ll.HoughTransform(dikeset) print(dikeset.columns)
Index(['Id', 'Length', 'VALIDATION_ERRORS', 'geometry', 'Xstart', 'Ystart',
       'Xend', 'Yend', 'seg_length', 'HashID', 'Xmid', 'Ymid', 'theta', 'rho',
       'xc', 'yc', 'PerpOffsetDist', 'PerpIntX', 'PerpIntY', 'Date Changed'],
      dtype='object')

Visualize the hough transform data.

[15]:
fig,ax=ll.DotsLines(dikeset, ColorBy='theta')

fig2, ax2 = ll.plotScatterHist(dikeset, "theta", "rho")
km scale label
_images/DemoFractures_5_1.png
_images/DemoFractures_5_2.png