Some software, scripts and toolboxes are available and may find your interest:


  1. Edit distance based recurrence plot for event time series

    Julia code to calculate recurrence plots of the Rössler system:

    1. calculated from the original continuous data (regular recurrence plot) and
    2. from the events series representing the maxima of the x-component (edit distance recurrence plot).

    Published in
    N. Marwan: Challenges and perspectives in recurrence analyses of event time series, Frontiers in Applied Mathematics and Statistics, 9, 1129105 (2023). DOI:10.3389/fams.2023.1129105

  2. Data and MATLAB Code for Reproducing RPs and RQA of Westerhold et al, Science, 369, 2020

    The data file `CENOGRID_Loess_20.txt` contains the astronomically tuned deep-sea benthic foraminifer carbon (δ¹³C) and oxygen (δ¹⁸O) isotope reference records uniformly covering the entire Cenozoic. The first column is the tuned age in Ma, the second column the δ¹³C, and the third column the δ¹⁸O record.

    The original calculations were performed using the CRP Toolbox for MATLAB. In order to avoid installing the toolbox and for better performance, the functions for calculating RP and RQA were here reimplemented, providing identical result.

    To reproduce the RPs in Fig. 2, use the script `perform_rp.m`, for reproducing the determinism values and upper confidence bounds, use the script `perform_rqa.m`.

    Published in
    T. Westerhold, N. Marwan, A. J. Drury, D. Liebrand, C. Agnini, E. Anagnostou, J. S. K. Barnet, S. M. Bohaty, D. De Vleeschouwer, F. Florindo, T. Frederichs, D. A. Hodell, A. E. Holbourn, D. Kroon, V. Lauretano, K. Littler, L. J. Lourens, M. Lyle, H. Pälike, U. Röhl, J. Tian, R. H. Wilkens, P. A. Wilson, J. C. Zachos: An astronomically dated record of Earth's climate and its predictability over the last 66 million years, Science, 369(6509), 1383–1387 (2020). DOI:10.1126/science.aba6853

  3. A bibliographic view on the recurrence plots and recurrence quantification analysis

    Dataset of recurrence plot bibliography. Scripts to retrieve additional data (paper citations and authors' affiliations) and to perform some statistical bibliometric and bibliographic analysis of the recurrence plot bibliography. Scripts are forPython and MATLAB.

  4. Power spectral estimate for discrete data

    Data and Julia code for reproducing figures of
    N. Marwan, T. Braun: Power spectral estimate for discrete data, Chaos, 33(5), 053118 (2023). DOI:10.1063/5.0143224

  5. Difference recurrence plots for structural inspection using guided ultrasonic waves

    Code and data source to reproduce figures in
    C. Brandt, N. Marwan: Difference recurrence plots for structural inspection using guided ultrasonic waves – A new approach for evaluation of small signal differences, European Physical Journal – Special Topics, 232, 69–81 (2023). DOI:10.1140/epjs/s11734-022-00701-8

  6. Extended generalized recurrence plot quantification of complex circular patterns

    MATLAB scripts and functions used to create spatial recurrence plots to study circular structures in higherdimensional data fields, and to reproduce the figures of 

    M. Riedl, N. Marwan, J. Kurths: Extended generalized recurrence plot quantification of complex circular patterns, European Physical Journal B, 90(58), 1–9 (2017). DOI:10.1140/epjb/e2017-70560-7

  7. Acquisition and analysis of grey scale data from stalagmites using ImageJ software

    We provide three scripts for MATLAB and Octave to extract grey values from scanned images (extract_greyvalues.m), to concatenate grey value tracks (combine_tracks.m), and for interpolation and uncertainty estimation of the grey value record chronology_with_uncert.m. Use for Octave was tested with version 6.2.0 and for MATLAB with version 2023.

    Published in
    S. F. M. Breitenbach, N. Marwan: Acquisition and analysis of greyscale data from stalagmites using ImageJ software, Cave and Karst Science, 50(2), 69–78 (2023)

  8. Trends in recurrence analysis of dynamical system

    Scripts to reproduce the figures in
    N. Marwan, K. H. Kraemer: Trends in recurrence analysis of dynamical systems, European Physical Journal – Special Topics, 232, 5–27 (2023). DOI:10.1140/epjs/s11734-022-00739-8

  9. pucicu/rp: Recurrence plot and recurrence quantification analysis implementation for MATLAB

    Simple MATLAB functions for calculating recurrence plots and recurrence quantification.

  10. hkraemer/PECUZAL_python: PECUZAL embedding algorithm

    Minor bugfixes

  11. hkraemer/PECUZAL_Matlab: Sample_size keyword works properly now

    In order to speed up computation it is possible to only consider a fraction of all points in the trajectory. The sample_size-keyword handles these situations and now also affects the computation of the L-statistic.

  12. hkraemer/Recurrence_Spike_Spectra: Spike spectra for recurrences

    Fully reproducible code base for the the paper Kraemer et al. 2022, Spike spectra for recurrences, published in Entropy.

  13. Recurrence Flow measure of nonlinear dependence

    In this Python implementation of the recurrence flow measure, subroutines for computing a recurrence plot, non-uniformly embedding a uni-/multivariate time series and conducting recurrence flow based analysis, i.e. nonlinear correlation analysis and recurrence flow based delay selection, are provided. It corresponds to the first release of the respective Git repository:

    For any request, please get in touch with Tobias Braun (tobraun@pik-potsdam.de).

  14. Interpolation and sampling effects on recurrence quantification measures

    These are the jupyter notebooks, which are used to create the figures for the paper: Interpolation and sampling effects on recurrence quantification measures

    To use the scripts the following python packages have to be installed:

    • numpy
    • matplotlib
    • scipy
    • jupyterlab
    • tqdm
    • ipywidgets

  15. Nonlinear time series analysis of palaeoclimate proxy records

    Jupyter notebook for nonlinear time series analysis of the palaeoclimate proxy records used in the paper. It calculates the number of potential wells, the entropy of the data, the order pattern (permutation) entropy, the recurrence quantification/network measures, DET, LAM, transitivity, and average path length as well as the visibility graph based irreversibility test statsitics p(k) and p(C).

    The repository also contains the data sets used in the analysis in the folder Data.

    Published in
    N. Marwan, J. F. Donges, R. V. Donner, D. Eroglu: Nonlinear time series analysis of palaeoclimate proxy records, Quaternary Science Reviews, 274, 107245 (2021). DOI:10.1016/j.quascirev.2021.107245

  16. Recurrence-based synchronization analysis of weakly coupled bursting neurons under external ELF field

    Code of a two-dimensional neuron model exposed to an externally applied extremely low frequency (ELF) sinusoidal electric field, allowing the study of phase synchronization of neurons weakly coupled with gap junction. The analysis is performed using recurrence plots.

    Published in 
    A. M. Nkomidio, E. J. Ngamga, B. R. N. Nbendjo, J. Kurths, N. Marwan: Recurrence-Based Synchronization Analysis of Weakly Coupled Bursting Neurons Under External ELF Fields, Entropy, 24(2), 235 (2022). DOI:10.3390/e24020235