PlotTxrd
Origin and Motivation
During an experiment on the CRISTAL beamline at SOLEIL in summer 2025, I experienced the difficulty of rapidly visualizing and evaluating diffraction diagrams in real time, especially during thermodiffraction experiments with acquisition times of only a few tens of seconds. Existing tools lacked the responsiveness needed to monitor the evolution of diffraction features as the temperature changed.
To address this limitation, I developed PlotTxrd — a Python-based software designed to efficiently manage and visualize large thermodiffraction datasets. Since its initial version, I have continued to develop and extend it for laboratory XRD applications as well as synchrotron environments.
Building on the same routines and visualization logic, I also implemented XRDanalyzer, a companion tool intended for smaller datasets but with a more global attention to metadata and data modification. XRDanalyzer allows users to explore and manipulate individual patterns, edit experimental metadata, perform arithmetic operations on curves, normalize data, and save projects with full HDF5 metadata support.
Main Features
- Real-time visualization of large diffraction series with temperature tracking
- Interactive 2D and 1D plotting with customizable styles and scales
- Automatic extraction and management of temperature metadata
- Tools for background subtraction, integration, and maximum intensity analysis
- Batch export to xye, FullProf, or JANA formats
- Project save/load with full metadata and compression
- Advanced toolbars for color map control, scaling, and interactive selection
- XRDanalyzer-specific features:
- Arithmetic operations on selected curves (add, multiply)
- Normalization of curves to maximum or delta values
- Editing and visualization of metadata for each pattern
- Merge multiple scans with optional averaging
- Distributed as a bundle including both PlotTxrd and XRDanalyzer
Downloads
The software is currently in pre-alpha and updated frequently. Below are the latest downloadable versions with brief notes on updates.
- XRDPlotter 0.0.15.Alpha (11/2/26) Download
- - added XRDPlotter 0.0.1Alpha
- - PlotTxrd minor bug corrections
- PlotTxrd 0.0.14.Alpha (19/1/26) Download
- - added x shift on 1D plot
- - new GUI system manager
- PlotTxrd 0.0.13.Alpha (5/1/26) Download
- - added x shift on 1D plot
- - new GUI system manager
- PlotTxrd 0.0.12.Alpha Download
- - If several multiscans file are open, the program merge the scan of each file
- - in 1D plot toggle between linear sqrt and log intensity clicking on y label
- PlotTxrd 0.0.11.Alpha Download
- - Bug xye/xy
- - in 1D plot toggle between linear, sqrt and log intensity clicking on y label
- PlotTxrd 0.0.10.Alpha Download
- - Better management ILLdata
- - UXD files
- - ras file with Oxford_PheniX
- PlotTxrd 0.0.9.Alpha Download
- - Original Deposit
- - Project save/load with full metadata (HDF5)
- - Individual curve editing, arithmetic, and normalization
- - Merge and average multiple scans
- - Metadata visualization and editing
- - Distributed together with PlotTxrd in a software bundle
For the latest updates and the full source code, visit the PlotTxrd GitHub repository.
Development and Access
PlotTxrd and XRDanalyzer are developed in Python using
Tkinter, Matplotlib, ttkbootstrap,
and NumPy. The interfaces are optimized for
thermodiffraction experiments at the CRISTAL beamline (SOLEIL).
The latest public version and source code are available on GitHub.
Applications
PlotTxrd is currently used to manage diffraction data from temperature-dependent studies on functional materials, enabling efficient visualization of peak evolution, phase transitions, and structural modulations. XRDanalyzer complements it by allowing detailed exploration and modification of individual datasets, useful for laboratory tests or smaller experiments where full metadata tracking and data manipulation is needed.