Skip to main content

GUI for PDF simulation and structure refinement.

Project description


Graphical user interface program for structure refinements to atomic pair distribution function.

PDFgui is a friendly interface to PDFfit2 refinement engine, with many powerful extensions. To get started, please open the manual from the help menu and follow the tutorial instructions. A detailed description is available in the doc/Farrow-jpcm-2007.pdf paper.


PDFgui requires Python 2.7 and several third-party libraries that are used by PDFgui and its components.

We recommend to use Anaconda Python which allows to conveniently install PDFgui and all its software dependencies with a single command. For other Python distributions it is necessary to install the required software separately. As an example, on Ubuntu Linux some of the required software can be installed using

sudo apt-get install \
   python-setuptools python-wxtools python-numpy \

To install the remaining packages see the installation instructions at their respective web pages.


The preferred method is to use Anaconda Python and install from the “diffpy” channel of Anaconda packages

conda config --add channels diffpy
conda install diffpy.pdfgui

PDFgui can be then started from a terminal (“Anaconda Prompt” on Windows) by executing the “pdfgui” program. An alternative method on Windows is to start PDFgui through the DiffPy start menu.

If you don’t use Anaconda or prefer to install from sources, make sure the required software is all in place and run

python install

By default the files are installed to standard system directories, which may require the use of sudo for write privileges. If administrator (root) access is not available, see the output from python install --help for options to install as a regular user to user-writable locations. Note that installation to non-standard directories may require adjustments to the PATH and PYTHONPATH environment variables. The installation integrity can be verified by changing to the HOME directory and running

python -m diffpy.pdfgui.tests.rundeps

With Anaconda PDFgui can be later upgraded to the latest released version using

conda update diffpy.pdfgui

With other Python distributions the program can be upgraded to the latest version as follows

easy_install --upgrade diffpy.pdfgui

Other software

PDFgui can use an external structure viewer for displaying analyzed structures. We have tested with several structure viewers such as

Other viewers should work as well, as long as they understand one of the output structure formats supported by PDFgui.


PDFgui is an open-source software available in a git repository at

Feel free to fork the project and contribute. To install PDFgui in a development mode where the source files are used directly rather than copied to a system directory, use

python develop --user


For more information on PDFgui please visit the project web-page:

or email Prof. Simon Billinge at

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

diffpy.pdfgui-1.1.2.tar.gz (6.3 MB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page