petab.visualize.helper_functions
This file should contain the functions, which PEtab internally needs for plotting, but which are not meant to be used by non-developers and should hence not be directly visible/usable when using import petab.visualize.
Functions
|
Check the columns in measurement file, if non-mandotory columns does not exist, create default columns |
|
Check the columns in Visu_Spec file, if non-mandotory columns does not exist, create default columns |
|
Helper function for plotting data and simulations, which checks the visualization setting, if no visualization specification file is provided. |
|
Create dataset id list and corresponding plot legends. |
|
Create dataset ID list from a list of simulation condition IDs or observable IDs. |
|
Helper function for plotting data and simulations, open figure and axes |
|
Helper function for plotting data and simulations, which updates vis_spec file if necessary or creates a default visualization table and updates/creates DATASET_ID column of exp_data. |
|
Expand visualization specification. |
|
Generate DATASET_ID column from condition_ids and observable_ids. |
|
Group the data, which should be plotted and return it as dataframe. |
|
Helper function for plotting data and simulations, which creates a default visualization table and updates/creates DATASET_ID column of exp_data |
|
Helper function for creating values for columns PLOT_ID, DATASET_ID, LEGEND_ENTRY, Y_VALUES for visualization specification file. |
|
Handle dataset plot |
|
Helper function for plotting data and simulations, which imports data from PEtab files. |
|
Constructs an index for subsetting of the dataframe according to what is specified in plot_spec. |
- petab.visualize.helper_functions.check_ex_exp_columns(exp_data: pandas.core.frame.DataFrame, dataset_id_list: List[List[str]], sim_cond_id_list: List[List[str]], sim_cond_num_list: List[List[int]], observable_id_list: List[List[str]], observable_num_list: List[List[int]], exp_conditions: pandas.core.frame.DataFrame, sim: Optional[bool] = False) Tuple[pandas.core.frame.DataFrame, List[List[str]], Dict] [source]
Check the columns in measurement file, if non-mandotory columns does not exist, create default columns
- Returns
A tuple of experimental DataFrame, list of datasetIds and dictionary of plot legends, corresponding to the datasetIds
- petab.visualize.helper_functions.check_ex_visu_columns(vis_spec: pandas.core.frame.DataFrame, exp_data: pandas.core.frame.DataFrame, exp_conditions: pandas.core.frame.DataFrame) pandas.core.frame.DataFrame [source]
Check the columns in Visu_Spec file, if non-mandotory columns does not exist, create default columns
- Returns
Updated visualization specification DataFrame
- petab.visualize.helper_functions.check_vis_spec_consistency(exp_data: pandas.core.frame.DataFrame, dataset_id_list: Optional[List[List[str]]] = None, sim_cond_id_list: Optional[List[List[str]]] = None, sim_cond_num_list: Optional[List[List[int]]] = None, observable_id_list: Optional[List[List[str]]] = None, observable_num_list: Optional[List[List[int]]] = None) str [source]
Helper function for plotting data and simulations, which checks the visualization setting, if no visualization specification file is provided.
For documentation, see main function plot_data_and_simulation()
- Returns
Specifies the grouping of data to plot.
- petab.visualize.helper_functions.create_dataset_id_list(simcond_id_list: List[List[str]], simcond_num_list: List[List[int]], observable_id_list: List[List[str]], observable_num_list: List[List[int]], exp_data: pandas.core.frame.DataFrame, exp_conditions: pandas.core.frame.DataFrame, group_by: str) Tuple[pandas.core.frame.DataFrame, List[List[str]], Dict, Dict] [source]
Create dataset id list and corresponding plot legends. Additionally, update/create DATASET_ID column of exp_data
- Parameters
group_by – defines grouping of data to plot
- Returns
A tuple of experimental DataFrame, list of datasetIds and dictionary of plot legends, corresponding to the datasetIds
For additional documentation, see main function plot_data_and_simulation()
- petab.visualize.helper_functions.create_dataset_id_list_new(df: pandas.core.frame.DataFrame, group_by: str, id_list: List[List[str]]) List[List[str]] [source]
Create dataset ID list from a list of simulation condition IDs or observable IDs.
- Parameters
df – Measurements or simulations DataFrame.
group_by – Defines grouping of data to plot.
id_list – Grouping list. Each sublist corresponds to a subplot in a figure, and contains the IDs of observables or simulation conditions for the subplot.
- Returns
A list of datasetIds
- petab.visualize.helper_functions.create_figure(uni_plot_ids: numpy.ndarray, plots_to_file: bool) Tuple[matplotlib.figure.Figure, Union[Dict[str, matplotlib.axes._subplots.AxesSubplot], np.ndarray[plt.Subplot]]] [source]
Helper function for plotting data and simulations, open figure and axes
- Parameters
uni_plot_ids – Array with unique plot indices
plots_to_file – Indicator if plots are saved to file
- Returns
fig (Figure object of the created plot.)
ax (Axis object of the created plot.)
- petab.visualize.helper_functions.create_or_update_vis_spec(exp_data: pandas.core.frame.DataFrame, exp_conditions: pandas.core.frame.DataFrame, vis_spec: Optional[pandas.core.frame.DataFrame] = None, dataset_id_list: Optional[List[List[str]]] = None, sim_cond_id_list: Optional[List[List[str]]] = None, sim_cond_num_list: Optional[List[List[int]]] = None, observable_id_list: Optional[List[List[str]]] = None, observable_num_list: Optional[List[List[int]]] = None, plotted_noise: Optional[str] = 'MeanAndSD')[source]
Helper function for plotting data and simulations, which updates vis_spec file if necessary or creates a default visualization table and updates/creates DATASET_ID column of exp_data. As a result, a visualization specification file exists with columns PLOT_ID, DATASET_ID, Y_VALUES and LEGEND_ENTRY
- Returns
A tuple of visualization specification DataFrame and experimental DataFrame.
- petab.visualize.helper_functions.expand_vis_spec_settings(vis_spec: pandas.core.frame.DataFrame, columns_dict)[source]
Expand visualization specification. only makes sense if DATASET_ID is not in vis_spec.columns?
- Parameters
vis_spec (A visualization specification DataFrame.) –
columns_dict –
- Return type
Expanded visualization specification DataFrame
- petab.visualize.helper_functions.generate_dataset_id_col(exp_data: pandas.core.frame.DataFrame) List[str] [source]
Generate DATASET_ID column from condition_ids and observable_ids.
- Parameters
exp_data – A measurement (simulation) DataFrame in the PEtab format.
- Returns
A list with generated datasetIds for each entry in the measurement
(simulation) DataFrame
- petab.visualize.helper_functions.get_data_to_plot(plot_spec: pandas.core.series.Series, m_data: pandas.core.frame.DataFrame, simulation_data: pandas.core.frame.DataFrame, condition_ids: numpy.ndarray, col_id: str, simulation_field: str = 'simulation') pandas.core.frame.DataFrame [source]
Group the data, which should be plotted and return it as dataframe.
- Parameters
plot_spec – information about contains defined data format (visualization file)
m_data – contains defined data format (measurement file)
simulation_data – contains defined data format (simulation file)
condition_ids – contains all unique condition IDs which should be plotted in one figure (can be found in measurementData file, column simulationConditionId)
col_id – the name of the column in visualization file, whose entries should be unique (depends on condition in column xValues)
simulation_field – Column name in
simulation_data
that contains the actual simulation result.
- Returns
Contains the data which should be plotted (Mean and Std)
- petab.visualize.helper_functions.get_default_vis_specs(exp_data: pandas.core.frame.DataFrame, exp_conditions: pandas.core.frame.DataFrame, dataset_id_list: Optional[List[List[str]]] = None, sim_cond_id_list: Optional[List[List[str]]] = None, sim_cond_num_list: Optional[List[List[int]]] = None, observable_id_list: Optional[List[List[str]]] = None, observable_num_list: Optional[List[List[int]]] = None, plotted_noise: Optional[str] = 'MeanAndSD') Tuple[pandas.core.frame.DataFrame, pandas.core.frame.DataFrame] [source]
Helper function for plotting data and simulations, which creates a default visualization table and updates/creates DATASET_ID column of exp_data
- Returns
A tuple of visualization specification DataFrame and experimental DataFrame.
For documentation, see main function plot_data_and_simulation()
- petab.visualize.helper_functions.get_vis_spec_dependent_columns_dict(exp_data: pandas.core.frame.DataFrame, exp_conditions: pandas.core.frame.DataFrame, dataset_id_list: Optional[List[List[str]]] = None, sim_cond_id_list: Optional[List[List[str]]] = None, sim_cond_num_list: Optional[List[List[int]]] = None, observable_id_list: Optional[List[List[str]]] = None, observable_num_list: Optional[List[List[int]]] = None) Tuple[pandas.core.frame.DataFrame, Dict] [source]
Helper function for creating values for columns PLOT_ID, DATASET_ID, LEGEND_ENTRY, Y_VALUES for visualization specification file. DATASET_ID column of exp_data is updated accordingly.
- Returns
A tuple of experimental DataFrame and a dictionary with values for columns PLOT_ID, DATASET_ID, LEGEND_ENTRY, Y_VALUES for visualization specification file.
- petab.visualize.helper_functions.handle_dataset_plot(plot_spec: pandas.core.series.Series, ax: matplotlib.axes._axes.Axes, exp_data: pandas.core.frame.DataFrame, exp_conditions: pandas.core.frame.DataFrame, sim_data: pandas.core.frame.DataFrame)[source]
Handle dataset plot
- petab.visualize.helper_functions.import_from_files(data_file_path: str, condition_file_path: str, simulation_file_path: str, dataset_id_list: List[List[str]], sim_cond_id_list: List[List[str]], sim_cond_num_list: List[List[int]], observable_id_list: List[List[str]], observable_num_list: List[List[int]], plotted_noise: str, visualization_file_path: Optional[str] = None) Tuple[pandas.core.frame.DataFrame, pandas.core.frame.DataFrame, pandas.core.frame.DataFrame, pandas.core.frame.DataFrame] [source]
Helper function for plotting data and simulations, which imports data from PEtab files. If visualization_file_path is not provided, the visualization specification DataFrame will be generated automatically.
For documentation, see main function plot_data_and_simulation()
- Returns
A tuple of experimental data, experimental conditions, visualization specification and simulation data DataFrames.
- petab.visualize.helper_functions.matches_plot_spec(df: pandas.core.frame.DataFrame, col_id: str, x_value: Union[float, str], plot_spec: pandas.core.series.Series) pandas.core.series.Series [source]
Constructs an index for subsetting of the dataframe according to what is specified in plot_spec.
- Parameters
df – pandas data frame to subset, can be from measurement file or simulation file
col_id – name of the column that will be used for indexing in x variable
x_value – subsetted x value
plot_spec – visualization spec from the visualization file
- Returns
Boolean series that can be used for subsetting of the passed dataframe