.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "examples/Creating_GS_Files/plot_csv_loupe_to_netcdf.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code. .. rst-class:: sphx-glr-example-title .. _sphx_glr_examples_Creating_GS_Files_plot_csv_loupe_to_netcdf.py: Multi-dataset Survey -------------------- This example demonstrates the typical workflow for creating a GS file for an AEM survey in its entirety, i.e., the NetCDF file contains all related datasets together, e.g., raw data, processed data, inverted models, and derivative products. Specifically, this survey contains: 1. Minimally processed (raw) AEM data and raw/processed magnetic data provided by SkyTEM 2. Fully processed AEM data used as input to inversion 3. Laterally constrained inverted resistivity models 4. Point-data estimates of bedrock depth derived from the AEM models 5. Interpolated magnetic and bedrock depth grids Note: To make the size of this example more managable, some of the input datasets have been downsampled relative to the source files in the data release referenced below. Dataset Reference: Minsley, B.J, Bloss, B.R., Hart, D.J., Fitzpatrick, W., Muldoon, M.A., Stewart, E.K., Hunt, R.J., James, S.R., Foks, N.L., and Komiskey, M.J., 2022, Airborne electromagnetic and magnetic survey data, northeast Wisconsin (ver. 1.1, June 2022): U.S. Geological Survey data release, https://doi.org/10.5066/P93SY9LI. .. GENERATED FROM PYTHON SOURCE LINES 20-26 .. code-block:: Python import matplotlib.pyplot as plt from os.path import join import numpy as np import gspy .. GENERATED FROM PYTHON SOURCE LINES 27-29 Convert the Skytem csv data to NetCDF +++++++++++++++++++++++++++++++++++++ .. GENERATED FROM PYTHON SOURCE LINES 31-32 Initialize the Survey .. GENERATED FROM PYTHON SOURCE LINES 32-48 .. code-block:: Python # Path to example files data_path = '..//..//..//..//example_material//example_3' # Survey metadata file metadata = join(data_path, "data//LoupeEM_survey_md.yml") # Establish the Survey survey = gspy.Survey.from_dict(metadata) data_container = survey.gs.add_container('data') data = join(data_path, 'data//Kankakee.dat') metadata = join(data_path, 'data//Loupe_data_metadata.yml') data_container.gs.add(key='raw_data', data_filename=data, metadata_file=metadata) .. raw:: html
<xarray.DatasetView> Size: 11MB
    Dimensions:       (index: 11633, gate_times: 23)
    Coordinates:
        spatial_ref   float64 8B 0.0
      * index         (index) int32 47kB 0 1 2 3 4 ... 11628 11629 11630 11631 11632
        x             (index) float64 93kB 5.248e+05 5.248e+05 ... 5.248e+05
        y             (index) float64 93kB 4.583e+06 4.583e+06 ... 4.583e+06
        z             (index) float64 93kB 211.5 211.5 211.5 ... 204.4 204.4 204.4
      * gate_times    (gate_times) float64 184B 1.297e-05 1.495e-05 ... 0.002183
    Data variables: (12/45)
        fid           (index) object 93kB '1' '2' '3' ... '12120' '12121' '12122'
        acq           (index) float64 93kB 1.0 1.0 1.0 1.0 ... 25.0 25.0 25.0 25.0
        acq_rdg       (index) float64 93kB 0.0 1.0 2.0 3.0 ... 364.0 365.0 366.0
        acq_time      (index) object 93kB '20230808T175252.504075397Z' ... '20230...
        time          (index) object 93kB '20230808T175253.000000000Z' ... '20230...
        ts            (index) float64 93kB 1.692e+09 1.692e+09 ... 1.692e+09
        ...            ...
        y_powerphase  (index) float64 93kB 1.006 1.07 1.008 ... -2.935 -2.884 -2.952
        z_powerphase  (index) float64 93kB 1.663 1.679 1.748 ... 0.9777 1.006 1.041
        X_CH          (index, gate_times) float64 2MB 491.5 357.4 ... 0.01459
        Y_CH          (index, gate_times) float64 2MB -6.219 6.26 ... -0.002063
        Z_CH          (index, gate_times) float64 2MB 499.8 434.7 ... 6.37e-05
        line          (index) int64 93kB 1 1 1 1 1 1 1 1 ... 25 25 25 25 25 25 25 25
    Attributes:
        content:     raw data
        comment:     This dataset includes minimally processed (raw) AEM data
        type:        data
        method:      electromagnetic
        instrument:  loupe


.. GENERATED FROM PYTHON SOURCE LINES 49-50 Save to NetCDF file .. GENERATED FROM PYTHON SOURCE LINES 50-53 .. code-block:: Python d_out = join(data_path, 'data//Loupe.nc') survey.gs.to_netcdf(d_out) .. GENERATED FROM PYTHON SOURCE LINES 54-55 Reading back in .. GENERATED FROM PYTHON SOURCE LINES 55-57 .. code-block:: Python new_survey = gspy.open_datatree(d_out)['survey'] .. GENERATED FROM PYTHON SOURCE LINES 58-59 Plotting .. GENERATED FROM PYTHON SOURCE LINES 59-66 .. code-block:: Python plt.figure() new_survey['data/raw_data']['height'].plot(label='height') new_survey['data/raw_data']['tx_height'].plot(label='tx_height') new_survey['data/raw_data']['rx_height'].plot(label='rx_height') plt.tight_layout() plt.legend() plt.show() .. image-sg:: /examples/Creating_GS_Files/images/sphx_glr_plot_csv_loupe_to_netcdf_001.png :alt: spatial_ref = 0.0 :srcset: /examples/Creating_GS_Files/images/sphx_glr_plot_csv_loupe_to_netcdf_001.png :class: sphx-glr-single-img .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 2.470 seconds) .. _sphx_glr_download_examples_Creating_GS_Files_plot_csv_loupe_to_netcdf.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_csv_loupe_to_netcdf.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_csv_loupe_to_netcdf.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: plot_csv_loupe_to_netcdf.zip ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_