Skip to content

KarstID R package: a Shiny application for analyzing karst spring hydrographs

License

Unknown, CC-BY-4.0 licenses found

Licenses found

Unknown
LICENSE
CC-BY-4.0
LICENSE.md
Notifications You must be signed in to change notification settings

busemorose/KarstID

Repository files navigation

KarstID: Analysis of Karst Spring Hydrographs

Guillaume Cinkus, Naomi Mazzilli and Hervé Jourde

Download the User Guide:

  1. Go to https://hal.archives-ouvertes.fr/hal-03688332/
  2. Right-click on the User Guide HTML file in Annex
  3. Click on Save Link As...

Description

KarstID is an R Package devoted to the analysis of karst systems hydrological functioning. The package consists in an interactive application that can be loaded through a web browser or the RStudio viewer. The application is developed in the R Shiny framework.

The goal of KarstID is to facilitate the completion of common analyses of karst spring hydrographs such as:

  • Statistical analyses
  • Recession curves analysis
  • Simple correlational and spectral analyses
  • Analyses of classified discharges

The equations behind the analyses and the calculation of the indicators are detailed in Cinkus et al. (2021) (https://doi.org/10.1016/j.jhydrol.2021.127006). The application also provides the classification of karst systems hydrological functioning based on the proposal of Cinkus et al. (2021) and offers to compare the results with a database of 78 karst systems located worldwide (Olarinoye et al., 2020, https://doi.org/10.1038/s41597-019-0346-5).

The KarstID package is open source, actively developed and available on Github (https://github.com/busemorose/KarstID). We will try to address user requests (new features or bug report). We also consider future developments such as different recession models, or adding other hydrodynamic analyses.

Installation

KarstID requires an installation of R. It is recommended to use at least R 4.0.0. Note that it is possible to install the package with an R version prior to 4.0.0 but some conflicts may exist. The instruction for the installation and the download of R can be found on the CRAN website.

Once R is installed, KarstID can be installed from GitHub.

if (!require("remotes")) install.packages("remotes") # install remotes package if needed
remotes::install_github("busemorose/KarstID") # install KarstID package

Launch

Once the package is installed, the application can be loaded with the KarstID() function.

library(KarstID)
KarstID()

Features

Data import

The data import tab allows to load a spring discharge time series:

  • The data must be a plain text or Excel file
  • The file must have two columns representing date and discharge, respectively
  • The discharge must be in m3/s

The import options allows the user to define:

  • Name: will be used for export file names and plot displays
  • Time step: time step of the imported time series
  • Skip row: number of rows to skip at the beginning of the file
  • Sheet: sheet number if Excel file
  • Decimal mark: decimal mark of the discharge values
  • Delimiter: delimiter of the columns
  • Header: presence of header or not (if no header, column names will be defaulted to date and discharge)
  • Compute and use daily mean: only for hourly time step. If checked, compute and use daily mean from (infra) hourly data
  • Date format: format of the date (e.g. %Y-%m-%d %H:%M:%S for a date-time format)

After defining the import options, the user can click on Load dataset to import his data. The application will:

  • Look for missing date entries (adapted to the time step of the time series) and fill the blanks if necessary
  • Interpolate missing discharge values if the user want to
  • Apply a daily or hourly mean depending on the user preference and the initial time step
  • Display the hydrograph on the import page

It is also possible to use a “test dataset” as demonstrated below.

Missing discharge interpolation

It is possible to interpolate missing values when importing discharge data:

  • Max interpolation gap size: define the maximum gap (in days) which will be interpolated with a spline function
  • Keep NA values: define the behaviour when there are still missing values after the interpolation (even if no interpolation). If checked, the whole time series with missing values will be loaded. If unchecked, only the longest part of the time series without missing values will be loaded

Hydrodynamic analyses

Recession curves

The recession curves analysis tab allows to select recession curves and apply recession model. The recession selection is done with a slider and four buttons:

  • Select a time interval: define the time interval of the plot
  • Zoom: zoom on the plot according to the dimensions of the mouse brush
  • Reset: reset the default (full) time interval
  • Add: add the selected recession curve (dimensions of the mouse brush) to the KarstID workspace. A recap of the information is displayed in the table below
  • Delete: delete the selected recession curve in the table from the KarstID workspace

It is possible to save the time series of the selected recession curves with the Download selected recession button and save the recap table with the Download table button. It is possible to save and import the entire KarstID workspace with the Save KarstID recession workspace and Upload KarstID recession workspace, respectively.

Once the recession curves are saved, they all appear in the table below and can be selected. When selected, the recession model interface is displayed on the right. The workflow is:

  • Remove potential perturbations on the recession with the Remove spikes in the recession curve checkbox
  • Click on the plot or enter a number in the Breakpoint value numeric input to define the inflexion point of the Mangin model (Mangin, 1975)
  • Calculate and retain indicators of functioning with the Save indicators button. The indicators appear in the recap table. It is possible to cancel the results with Clear selection

Signal analyses

The simple correlational and spectral analyses tab allows to visualize the results of these signal analyses proposed by Mangin (1984). The results are calculated automatically once a dataset is imported. It is possible to change the cutting point (in days) with the slider input below the graphs.

Classified discharges

The analysis of classified discharges tab allows to visualize the results of the classic approach and the Mangin (1971) approach. The results are calculated automatically once a dataset is imported.

Classification

The classification tab can be appreciated in four parts:

  • The top left text (i) reminds the values of the indicators, (ii) gives the distance to other classes, and (iii) displays a description of the hydrological functioning of the system according to its class
  • The top right flowchart indicates how the system is classified according to the values of the indicators of functioning
  • The bottom right table contains the classes and indicators values of 78 karst systems located worldwide. By default, they are ordered by distance to the investigated system
  • The bottom left plot shows the investigated system (highlighted in red) alongside the 78 other karst systems. It is possible to select a system in the table to highlight it in yellow on the plot The axis correspond to the three indicators of functioning used for the classification

License

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License

References

#> Warning: `includeHTML()` was provided a `path` that appears to be a complete HTML document.
#> ✖ Path: inst/extdata/references.html
#> ℹ Use `tags$iframe()` to include an HTML document. You can either ensure `path` is accessible in your app or document (see e.g. `shiny::addResourcePath()`) and pass the relative path to the `src` argument. Or you can read the contents of `path` and pass the contents to `srcdoc`.
<title>Bibliographie</title>
Cinkus, G., Mazzilli, N., Jourde, H., 2021. Identification of relevant indicators for the assessment of karst systems hydrological functioning: Proposal of a new classification. J. Hydrol. 603, 127006. https://doi.org/10.1016/j.jhydrol.2021.127006
Mangin, A., 1984. Pour une meilleure connaissance des systèmes hydrologiques à partir des analyses corrélatoire et spectrale. J. Hydrol. 67, 25–43. https://doi.org/10.1016/0022-1694(84)90230-0
Mangin, A., 1975. Contribution à l’étude hydrodynamique des aquifères karstiques (PhD). Université de Dijon, France. https://hal.archives-ouvertes.fr/tel-01575806
Mangin, A., 1971. Etude des débits classés d’exutoires karstiques portant sur un cycle hydrologique. Ann. spéléol. 26, 283–329.
Olarinoye, T., Gleeson, T., Marx, V., Seeger, S., Adinehvand, R., Allocca, V., Andreo, B., Apaéstegui, J., Apolit, C., Arfib, B., Auler, A., Bailly-Comte, V., Barberá, J.A., Batiot-Guilhe, C., Bechtel, T., Binet, S., Bittner, D., Blatnik, M., Bolger, T., Brunet, P., Charlier, J.-B., Chen, Z., Chiogna, G., Coxon, G., De Vita, P., Doummar, J., Epting, J., Fleury, P., Fournier, M., Goldscheider, N., Gunn, J., Guo, F., Guyot, J.L., Howden, N., Huggenberger, P., Hunt, B., Jeannin, P.-Y., Jiang, G., Jones, G., Jourde, H., Karmann, I., Koit, O., Kordilla, J., Labat, D., Ladouche, B., Liso, I.S., Liu, Z., Maréchal, J.-C., Massei, N., Mazzilli, N., Mudarra, M., Parise, M., Pu, J., Ravbar, N., Sanchez, L.H., Santo, A., Sauter, M., Seidel, J.-L., Sivelle, V., Skoglund, R.Ø., Stevanovic, Z., Wood, C., Worthington, S., Hartmann, A., 2020. Global karst springs hydrograph dataset for research and management of the world’s fastest-flowing groundwater. Sci. Data 7, 59. https://doi.org/10.1038/s41597-019-0346-5

About

KarstID R package: a Shiny application for analyzing karst spring hydrographs

Topics

Resources

License

Unknown, CC-BY-4.0 licenses found

Licenses found

Unknown
LICENSE
CC-BY-4.0
LICENSE.md

Stars

Watchers

Forks

Releases

No releases published