Dataframe - Plotting 2D seismic data#

Import Pandas

[16]:
import pandas as pd

Create a dataframe from a csv file containing 2D seismic data

[17]:
df = pd.read_csv("seismic2d.csv")

Print the head of the dataframe.

The dataframe contains only I, J, K and Value columns. These are the minimum columns needed to allow Investigator to treat the data as seismic. As no X, Y or TWT data is included the plot will default to sampling every 1ms.

[19]:
df.head()
[19]:
I J K Value
0 0 0 0 -1408.0
1 0 0 1 1920.0
2 0 0 2 4608.0
3 0 0 3 4992.0
4 0 0 4 3712.0

Import CegalPrizm Investigator and connect to Investigator

[20]:
import cegalprizm.investigator as investigator
from cegalprizm.investigator import InvestigatorConnection
from cegalprizm.investigator.views import *

invconnection = InvestigatorConnection(use_licensed_features=True)

Create a continuous value object describing the seismic data. This is used by Investigator to identify the values as seismic data.

[21]:
from cegalprizm.investigator import ContinuousDimensionInfoTuple

continuous_names = ['Value']
continuous_info = { 'Value':  ContinuousDimensionInfoTuple(property_name='Seismic (default)') }

Create a new investigation from the dataframe containing the seismic 2D data

[22]:
inv = invconnection.investigation_from_dataframe(df, continuous_names, continuous_column_info=continuous_info)

Create a seismic line view from the investigation and plot it

[23]:
seismic_line_view = SeismicLineView(inv)
investigator.plot(seismic_line_view, width=1500)
[23]:
../../../../../_images/products_Investigator_Workbooks_Tutorials_Dataframes_Seismic2D_14_0.png
[ ]: