{ "info": { "author": "Simon Fischer", "author_email": "", "bugtrack_url": null, "classifiers": [ "Environment :: X11 Applications :: GTK", "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Programming Language :: Python :: 3", "Topic :: Scientific/Engineering :: Physics" ], "description": "# XPL\n\nXPL is a tool for plotting and analyzing X-ray photoelectron spectroscopy (XPS) data. It can fit peaks using Pseudo Voigt profiles (more models to come) while enabling Area, Position and FWHM restrainment of the individual peaks to physically sensible values (or expressions).\n\n## New Version\n\nThere will be an implementation of Doniach-Sunjic type peaks as well as the possibility to control the Gauss-to-Lorentz ratio of Voigt/PseudoVoigt peaks in the near future.\n\nHowever, I am also working on a total rewrite which will be in a new repository and a different PyPi package. This will take some time until it is functional, so bear with me.\n\n\n## Installation\n### Ubuntu\n\nIf you don't already have it installed, install python and pip as well as libffi6 and python-gi through apt. Python version needs to be `>=3.5` (not tested below) and GTK needs to be version `>=3.14`.\n\n```shell\n$ sudo apt install python3 pip3\n$ sudo apt install libffi6 python3-gi\n$ pip3 install xpl\n```\n\nOn starting, XPL creates a `~/.config/xpl` folder where configuration files and converted spectrum files will be stored. To **launch** xpl, just select it from your applications menu. Alternatively, run it as a module:\n\n```shell\n$ python3 -m xpl\n```\n\nTo **update** xpl, run\n\n```shell\n$ pip3 install --upgrade xpl\n```\n\n### Windows\n\nI have not yet succeeded in building a windows `.exe` style app or even an installer. However, you can try to install PyGObject manually and get the xpl package through pip.\n\nFirst, you need Python 3.5 (other 3.x will probably work, not tested) from https://www.python.org/downloads/windows/ or Anaconda or whatever. Then, you need PyGObject eiter from https://sourceforge.net/projects/pygobjectwin32/ or through MSYS (http://www.msys2.org). I could not get it to work.\n\n\n\n## Usage\n\nYou can import spectra by clicking the plus icon in the main toolbar. So far, only exportet `.txt` files from the EIS Omicron software can be parsed.\n\nWhen the \"Spectra\" tab is selected, you can choose the spectra to view by selecting them, right clicking and clicking \"Plot selected spectra\". The rightmost icon in the top toolbar lets you select elements whose peak positions should be displayed (see screenshot).\n\n![Screenshot](doc/demo_atomlib.png \"Matching peaks\")\n\nIn the fitting tab, you can first add one or more regions by clicking \"+\" next to \"Regions\", then dragging across the Plot View. \n\nWhen a region is selected, you can add peaks by clicking \"+\" next to \"Peaks\" and drawing them by dragging from the peak maximum downwards inside the selected region. After this, you can constrain the peak values in the bottommost three entries: They accept input either like `< min > max` where `min` and `max` are minimum and maximum values for the corresponding parameter, or like `expression` which can be a simple arithmetic expression or just a fixed value. A relation to the same parameter of another peak can be expressed by using their label (see screenshot below).\n\n![Screenshot](doc/demo_fitting.png \"Fitting Ag3d peaks\")\n\nExporting the data or the plot is not yet supported.\n\n## Building\n### PyPI\n\nRun this for building the pypi package and uploading it.\n\n```shell\npython3 setup.py sdist bdist_wheel\npython3 -m twine upload dist/xpl-VERSION*\n```\n\nNote to self: Don't forget to use the correct version name when uploading to pypi.\n\n### Executable for Linux\n\nJust run\n\n```shell\npyinstaller xpl_linux.spec\n```\n\nThis makes an executable `dist/xpl/XPL`. For now, this still produces a Gtk-Warning about libcanberra when running the app but that can probably safely be ignored.\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/schachmett/xpl", "keywords": "physics XPS x-ray photoelectron spectroscopy chemistry", "license": "GPLv3", "maintainer": "", "maintainer_email": "", "name": "xpl", "package_url": "https://pypi.org/project/xpl/", "platform": "", "project_url": "https://pypi.org/project/xpl/", "project_urls": { "Homepage": "https://github.com/schachmett/xpl" }, "release_url": "https://pypi.org/project/xpl/0.8.6.2/", "requires_dist": [ "matplotlib", "numpy", "cairocffi", "lmfit" ], "requires_python": "~=3.5", "summary": "XPS spectrum analysis", "version": "0.8.6.2" }, "last_serial": 5873243, "releases": { "0.8": [ { "comment_text": "", "digests": { "md5": "ae3da81a8bb2c296848e89209747a729", "sha256": "916b46bd2c06874bc84438f92efb95b5f18ac6a20387c6ef91b9dbac30e699b3" }, "downloads": -1, "filename": "xpl-0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "ae3da81a8bb2c296848e89209747a729", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 164739, "upload_time": "2018-07-26T22:26:01", "url": "https://files.pythonhosted.org/packages/ce/2d/8dce43acd7fad2cfe56a260bdd1e4d0bea4f78a816662dda3e6b82f0c48e/xpl-0.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7c9f4ae187b1d86de18bf2385968de2a", "sha256": "1327e87372ab84aef5c37a0e5cf0e6ccfab14ff5fad2b7a9d0b986392ca5f378" }, "downloads": -1, "filename": "xpl-0.8.tar.gz", "has_sig": false, "md5_digest": "7c9f4ae187b1d86de18bf2385968de2a", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 159918, "upload_time": "2018-07-26T22:26:03", "url": "https://files.pythonhosted.org/packages/fa/1a/a7f461ccc97c33e7cfe7ef495a84cdb33e22271ed6ea7bb381bee7c5d133/xpl-0.8.tar.gz" } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "74503f33420febc318e5a8b6bc8a4b08", "sha256": "9e4a998260a801a1e0e824f0a88b48aa67acc8e9bce97a3778f34152c1c537c0" }, "downloads": -1, "filename": "xpl-0.8.1-py3-none-any.whl", "has_sig": false, "md5_digest": "74503f33420febc318e5a8b6bc8a4b08", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 195223, "upload_time": "2018-07-26T22:45:38", "url": "https://files.pythonhosted.org/packages/dd/db/4c7c350936ef00abd3d53d1e728347916ef1d4c4fa2e7b0653de941a4ba6/xpl-0.8.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5d62a895f2a7c0369cba8d6b75be9139", "sha256": "4aa09f299d6697d8d3f1cecb92f1218c79e49c0223f814beb6fd569e57f4ec83" }, "downloads": -1, "filename": "xpl-0.8.1.tar.gz", "has_sig": false, "md5_digest": "5d62a895f2a7c0369cba8d6b75be9139", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 191855, "upload_time": "2018-07-26T22:50:26", "url": "https://files.pythonhosted.org/packages/58/07/aa491ab8e3895cd6e5be54391acd91156256d595abdd5b18c4b3bb00011e/xpl-0.8.1.tar.gz" } ], "0.8.2": [ { "comment_text": "", "digests": { "md5": "9189a6c6838594465ae7237acd77612a", "sha256": "598d5a3cd0adcb76f97a1484e5edad19cdace6c96e9a0339afcace71549aeff5" }, "downloads": -1, "filename": "xpl-0.8.2-py3-none-any.whl", "has_sig": false, "md5_digest": "9189a6c6838594465ae7237acd77612a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 197606, "upload_time": "2018-07-27T00:36:00", "url": "https://files.pythonhosted.org/packages/c5/20/f2a5c025ef297b45f2ff6df47fd989bb65460b6a17c58436f93402feb715/xpl-0.8.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ff5d5f4c0768c0fd77da3833ff10c2b8", "sha256": "ce1eb50134156e4688575dfceebd8796131d1c042890609cd7fca542d54cd073" }, "downloads": -1, "filename": "xpl-0.8.2.tar.gz", "has_sig": false, "md5_digest": "ff5d5f4c0768c0fd77da3833ff10c2b8", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 163460, "upload_time": "2018-07-27T00:36:02", "url": "https://files.pythonhosted.org/packages/d7/4c/5addae99e94fd520db1a4f8643ebdff72f17af2f46624aaffd417e27d2fb/xpl-0.8.2.tar.gz" } ], "0.8.3": [ { "comment_text": "", "digests": { "md5": "f24cd3026d7b8220e476da9110ea5a9b", "sha256": "5d066633e2144d8fb3221dbebfcbbd5595d11f4625f352c5eb9289655e6c7daf" }, "downloads": -1, "filename": "xpl-0.8.3-py3-none-any.whl", "has_sig": false, "md5_digest": "f24cd3026d7b8220e476da9110ea5a9b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 256662, "upload_time": "2018-07-29T23:11:01", "url": "https://files.pythonhosted.org/packages/97/1b/e469ddca6ca4277cc437b5b0b98c5522dc937b66d118bc428cf03ab5e6f8/xpl-0.8.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b3dc335accb2f3b33f5708724adb12c0", "sha256": "e8f36446b14b4bf9e227fe7caa9f4b5f378309bc293756250fee2d5ebd580744" }, "downloads": -1, "filename": "xpl-0.8.3.tar.gz", "has_sig": false, "md5_digest": "b3dc335accb2f3b33f5708724adb12c0", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 195164, "upload_time": "2018-07-29T23:11:04", "url": "https://files.pythonhosted.org/packages/68/29/4822c0e1a1af31f677914f1c81e925ce56998ce809cfe72e70359439db88/xpl-0.8.3.tar.gz" } ], "0.8.4": [ { "comment_text": "", "digests": { "md5": "91befe644db989838855dee54f8a9443", "sha256": "be6114bbc867fd007d5c01a7ad62a969596c2224bc5030127d83a2696f117609" }, "downloads": -1, "filename": "xpl-0.8.4-py3-none-any.whl", "has_sig": false, "md5_digest": "91befe644db989838855dee54f8a9443", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 256716, "upload_time": "2018-07-30T11:52:18", "url": "https://files.pythonhosted.org/packages/d9/62/c1cdb0b731a9bd2327ba0b7b66cb0289233d703118f8b886a97738a0e20d/xpl-0.8.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "01ac118fdb98ca7852d58b6109e595ac", "sha256": "c6cf9aa773724918ae73681c77eb398c5287917b4c09915e5200dfef48387bdb" }, "downloads": -1, "filename": "xpl-0.8.4.tar.gz", "has_sig": false, "md5_digest": "01ac118fdb98ca7852d58b6109e595ac", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 195255, "upload_time": "2018-07-30T11:52:20", "url": "https://files.pythonhosted.org/packages/96/40/86def84fd38ce831c5d65468002503fa39271379aadde15f84344689d33b/xpl-0.8.4.tar.gz" } ], "0.8.5": [ { "comment_text": "", "digests": { "md5": "6655f066a04ab51917e7baabb8a5bb69", "sha256": "687b58adb627ebcd0b912f6410d9d748d228e7c5b3814e275215e5cb3ea07c92" }, "downloads": -1, "filename": "xpl-0.8.5-py3-none-any.whl", "has_sig": false, "md5_digest": "6655f066a04ab51917e7baabb8a5bb69", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 256725, "upload_time": "2018-07-30T12:31:24", "url": "https://files.pythonhosted.org/packages/0c/80/9303e9b5f199e9a7237d6e7cb19fef631894ab6d4b328034b51059c96879/xpl-0.8.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "97c11f92271e0b158094b996c00cd6af", "sha256": "8d9bded5708ddff783ee488dc8512d1c93be349786b1ec7baacfec7edd0a6b89" }, "downloads": -1, "filename": "xpl-0.8.5.tar.gz", "has_sig": false, "md5_digest": "97c11f92271e0b158094b996c00cd6af", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 195257, "upload_time": "2018-07-30T12:31:26", "url": "https://files.pythonhosted.org/packages/61/87/319e41fc8a5bfdc23ff8fc2056078764894a9cf06b30710ca696ca4367c5/xpl-0.8.5.tar.gz" } ], "0.8.5.2": [ { "comment_text": "", "digests": { "md5": "8fd3ea9bef83861b88269274f72d8de5", "sha256": "1165a7f06d8e36234176f6a76e6edda935736f9110851cb6235e52ca84a0231f" }, "downloads": -1, "filename": "xpl-0.8.5.2-py3-none-any.whl", "has_sig": false, "md5_digest": "8fd3ea9bef83861b88269274f72d8de5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 256756, "upload_time": "2018-07-30T13:35:02", "url": "https://files.pythonhosted.org/packages/e2/18/1e434905ace523d504feeb5019e4e77cb67e439950c5119bbf182b36a42a/xpl-0.8.5.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7bcc3942c5b5448236c1e9b4759e20cd", "sha256": "46f794a1421dde2c810cf5ae1781a18ec54256739825d6a78e34c6a11270e95e" }, "downloads": -1, "filename": "xpl-0.8.5.2.tar.gz", "has_sig": false, "md5_digest": "7bcc3942c5b5448236c1e9b4759e20cd", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 195277, "upload_time": "2018-07-30T13:35:05", "url": "https://files.pythonhosted.org/packages/63/f4/376257a384770d83b786080ac099e4aa61e8cf0cde4d81b072bfd2f24d33/xpl-0.8.5.2.tar.gz" } ], "0.8.5.3": [ { "comment_text": "", "digests": { "md5": "e124e3ddc1cf6e5caea1d7b9330fad9f", "sha256": "83840693dd636efa67369576667206648d30738c219fbebc48a445385a525c30" }, "downloads": -1, "filename": "xpl-0.8.5.3-py3-none-any.whl", "has_sig": false, "md5_digest": "e124e3ddc1cf6e5caea1d7b9330fad9f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 256754, "upload_time": "2018-07-30T13:41:40", "url": "https://files.pythonhosted.org/packages/29/fe/c2b3479f921458fdf5c1fff45c92be15650f8f448715627630e835945306/xpl-0.8.5.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "75cfdde8c29872535a0eb91e1bf54dfe", "sha256": "56f86964c9e911d73dec34867352d34b0e161e994fe30b8e5c3fd9064b8c6eec" }, "downloads": -1, "filename": "xpl-0.8.5.3.tar.gz", "has_sig": false, "md5_digest": "75cfdde8c29872535a0eb91e1bf54dfe", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 195269, "upload_time": "2018-07-30T13:41:42", "url": "https://files.pythonhosted.org/packages/79/b9/779959b5c9c1bc7abcc3ef47916814f54db8550f0875d785dd7878c4b953/xpl-0.8.5.3.tar.gz" } ], "0.8.5.4": [ { "comment_text": "", "digests": { "md5": "4632d22b3dd2e3bf425c8af856425077", "sha256": "5d5799bacb7588820b5c443211cd3e72936ab0a4f15460591176111abe172d03" }, "downloads": -1, "filename": "xpl-0.8.5.4-py3-none-any.whl", "has_sig": false, "md5_digest": "4632d22b3dd2e3bf425c8af856425077", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 259716, "upload_time": "2018-09-05T10:40:02", "url": "https://files.pythonhosted.org/packages/ed/c3/e505f5a5c3e65bedbc31838ae84e11f29d567b9f9ddac76d7314e17cce93/xpl-0.8.5.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7feafffbb99b70b5867892ed52cffa33", "sha256": "b7ea77f5437742be7b19109a8c1d43600c678163430e1e061a193fc5c74c8e89" }, "downloads": -1, "filename": "xpl-0.8.5.4.tar.gz", "has_sig": false, "md5_digest": "7feafffbb99b70b5867892ed52cffa33", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 198234, "upload_time": "2018-09-05T10:40:04", "url": "https://files.pythonhosted.org/packages/d9/aa/8518f8d2904897f41e426826e300f351b52029abca8623a7c70e4bf57936/xpl-0.8.5.4.tar.gz" } ], "0.8.6.0": [ { "comment_text": "", "digests": { "md5": "e06967a3f3f6434405b3966680a862ab", "sha256": "1f91009ad2479144106d628cfdb954759344dea8efc5ea008f65ea72b0423097" }, "downloads": -1, "filename": "xpl-0.8.6.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e06967a3f3f6434405b3966680a862ab", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 207353, "upload_time": "2019-01-25T18:37:02", "url": "https://files.pythonhosted.org/packages/12/d8/91f60af6f21284332aebc894ff1951b0b93ad7de4360d6264fdefdd1d33f/xpl-0.8.6.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5b0ec516341492c9bfc97bf098644023", "sha256": "41a0eeab76f220048ae867bc5203d68f14bc0716680fdc2449b4d4315b7fcf39" }, "downloads": -1, "filename": "xpl-0.8.6.0.tar.gz", "has_sig": false, "md5_digest": "5b0ec516341492c9bfc97bf098644023", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 167322, "upload_time": "2019-01-25T18:37:05", "url": "https://files.pythonhosted.org/packages/d8/29/72bac97fafd406e5caaeea25c427eb10e68d6d6c343bc213cfed410ca5e7/xpl-0.8.6.0.tar.gz" } ], "0.8.6.1": [ { "comment_text": "", "digests": { "md5": "72d83898cede44437b33d5c97100e783", "sha256": "6c47cf2431e27b12b11e6ec24b50ebf9e70397a5b19938d6383289e82a8f54f4" }, "downloads": -1, "filename": "xpl-0.8.6.1-py3-none-any.whl", "has_sig": false, "md5_digest": "72d83898cede44437b33d5c97100e783", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 209963, "upload_time": "2019-09-23T11:08:16", "url": "https://files.pythonhosted.org/packages/23/be/93feeb64b51acca018fe4b4fe4c5da87513ff36309b73623cbe8c43abd56/xpl-0.8.6.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7dad7bd6707df3b4d4b46bcd6e13485e", "sha256": "9b80090749cdaa8ade118be74ef1b6111fa92af44f774d31e569f9fc78152c3d" }, "downloads": -1, "filename": "xpl-0.8.6.1.tar.gz", "has_sig": false, "md5_digest": "7dad7bd6707df3b4d4b46bcd6e13485e", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 170102, "upload_time": "2019-09-23T11:08:18", "url": "https://files.pythonhosted.org/packages/0d/55/ddc177d1bb8327cdf92e86a58a27485cb70dc40abdc4d42dea1049243b77/xpl-0.8.6.1.tar.gz" } ], "0.8.6.2": [ { "comment_text": "", "digests": { "md5": "228d108e857827332dc80ae1f5d448cc", "sha256": "ac7072b54cd2834869a06cac4c3d1ffd2eb1e565c7be0af4939251509a76c5e1" }, "downloads": -1, "filename": "xpl-0.8.6.2-py3-none-any.whl", "has_sig": false, "md5_digest": "228d108e857827332dc80ae1f5d448cc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 222268, "upload_time": "2019-09-23T12:11:31", "url": "https://files.pythonhosted.org/packages/7e/09/f42473b23d41c3b3f4eeb59430abc76662f25528a4fdbef6379c7a089bdb/xpl-0.8.6.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cc8ba21050af119fd3d29028a7f1db10", "sha256": "6d18a2a285cd32e79526b385be4d2469b20677fb6e8eea075260b0f55e397410" }, "downloads": -1, "filename": "xpl-0.8.6.2.tar.gz", "has_sig": false, "md5_digest": "cc8ba21050af119fd3d29028a7f1db10", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 170132, "upload_time": "2019-09-23T12:11:33", "url": "https://files.pythonhosted.org/packages/e2/d6/97213fef22dc4ebda03a08d4f1b9b4fb8a2e6be6a2c3957be4bb87bbc9e3/xpl-0.8.6.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "228d108e857827332dc80ae1f5d448cc", "sha256": "ac7072b54cd2834869a06cac4c3d1ffd2eb1e565c7be0af4939251509a76c5e1" }, "downloads": -1, "filename": "xpl-0.8.6.2-py3-none-any.whl", "has_sig": false, "md5_digest": "228d108e857827332dc80ae1f5d448cc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "~=3.5", "size": 222268, "upload_time": "2019-09-23T12:11:31", "url": "https://files.pythonhosted.org/packages/7e/09/f42473b23d41c3b3f4eeb59430abc76662f25528a4fdbef6379c7a089bdb/xpl-0.8.6.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cc8ba21050af119fd3d29028a7f1db10", "sha256": "6d18a2a285cd32e79526b385be4d2469b20677fb6e8eea075260b0f55e397410" }, "downloads": -1, "filename": "xpl-0.8.6.2.tar.gz", "has_sig": false, "md5_digest": "cc8ba21050af119fd3d29028a7f1db10", "packagetype": "sdist", "python_version": "source", "requires_python": "~=3.5", "size": 170132, "upload_time": "2019-09-23T12:11:33", "url": "https://files.pythonhosted.org/packages/e2/d6/97213fef22dc4ebda03a08d4f1b9b4fb8a2e6be6a2c3957be4bb87bbc9e3/xpl-0.8.6.2.tar.gz" } ] }