{ "info": { "author": "D. Vincent West", "author_email": "dvincentwest@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Science/Research", "License :: OSI Approved :: GNU General Public License v2 (GPLv2)", "Programming Language :: Python", "Topic :: Scientific/Engineering :: Visualization" ], "description": "# Rapid Data Import Environment (radie)\n\nCopyright (©) 3M Company, 2018, \n\nLicense: GPL version 2 \n\nRadie is a python package for experimental data primarily using pandas\nfor data structures\n\nThe point of radie is to remove the pain of loading and visualizing\nexperimental data. It is not meant for complex plotting or pretty\npictures, but rather a focus on rapidly converging experimental data\nstored in files into a single place for rapid visualization.\n\n\n## GUI Demo\n\n![Alt Text](https://raw.githubusercontent.com/dvincentwest/radie-demos/master/radie-demo.gif)\n\nThe screen capture above shows the loading of three different experimental files (Rigaku XRD file, Particle Size Distribution and an IDEA VSM file) simultaneously into the program with drag and drop using the OS file explorer. From there we initialize new visualizations and then drag the datasets into the visualizations. Each visualization is tailored to a certain goal, be it the particularities of vieweing XRD files, PSD files, or the generic needs of plotting columnar data in an XY-scatter plot. The whole process only takes a few seconds and allows the user to rapidly view and display any kind of experimental data, provided an appropriate loader plugin has been written.\n\n\n## Python Usage\n\n```python\nimport radie as rd\ndf = rd.DataStructure(data=[1, 2, 3], name=\"data frame\")\nprint(df.metadata[\"name\"])\nprint(df.metadata[\"date\"])\n\ncsv_df = rd.load_file(\"my_random_data.csv\") # unspecified csv data\n\npow_df = rd.load_file(\"powder_diffraction_measurement.ras\") # powder diffraction data\nprint(pow_df.metadata[\"name\"])\n\nvsm_df = rd.load_file(\"magnetization_v_field.txt\") # VSM measurement\nprint(vsm_df.metadata[\"name\"])\n\nvsm_df.savetxt('my_vsm_file.df', overwrite=True) # save as a csv with metadata\n # in a commented json block\nvsm_reread = rd.load_file('my_vsm_file.df') # will read in savetxt output with\n # proper class and metadata info \n```\n\n\n## Launch PyQt Gui\n\n```shell\npython -m radie.qt.viewer\n```\n\n\n## Requirements\n- numpy\n- pandas\n\nadditionally for the gui application:\n- pyqt >= 5.6\n- pyqtgraph >= 0.10\n\noptional\n- pywin32 (Windows only)\n\n\n## Installation\n\n pip install radie\n\nto use the PyQt Gui you must also have PyQt5 and pyqtgraph installed:\n\n pip install radie PyQt5 pyqtgraph\n\nfor the latest updates, clone this repo and add radie/ to your PythonPath\n\nOn Windows, running the `install_windows_shortcut.py` script will install\nshorcuts for radie using the same python executables that are used to\nrun the install script. This requires pywin32.\n\n\n## Highlights\n\n- Core Features:\n - StructuredDataFrame - base class, just a pandas DataFrame with some\n restrictions, metadata and templates for more specific\n sub-classes\n - Common text file format - This is just a csv file where the metadata\n attached to the .metadata property is converted to a json object\n and stored in a commented block at the top.\n - CSV importer that under some structure assumptions attempts to:\n - automatically determine delimiter\n - automatically find the csv data-block\n - automatically determine headers\n - ignore preceding metadata\n - Qt-based Gui Viewer with Drag and Drop handling of files and\n data-set comparison\n- Extensible because (nearly) everything is a plugin\n - StructuredDataFrame subclasses specify structured data\n (add-your-own!)\n - Custom Visualizations of Structured Data, based on whatever fits\n into QMdiSubwindow (I use PyQtGraph)\n - File-loaders written for each supported file-type, register into\n the system so that radie.load\\_file can automatically detect\n and load registered file-types\n - \\*\\*GUI save files keep all your rapid analysis in one place\n each plugin specifies its own save data in json format and all\n DataStructures have a common save format\n\n\\*\\* Planned, but not yet implemented\n\n\n## Currently Supported File-types\n\n- Powder Diffraction:\n - Rigaku (.asc, .ras)\n - Bruker (.raw (v2))\n - GSAS (.raw, .gsas, .fxye)\n- Vibrating Sample Magnetometer:\n - Lakeshore (.dat, .txt (Field v Moment))\n- Particle Size Distribution:\n - Horiba LA-960 (.csv)\n- Thermogravimetric Analysis\n - TA Instruments Q500 (.001, .002, .003)\n- Differential Scanning Calorimetry (DSC)\n - TA Instruments Q2000 (.001, .002, .003)\n\n\n## Vision\n\nRadie is not a replacement for Origin, Igor, QtiPlot or similar gui\nscientific plotting/analysis packages. Instead Radie has the\nfollowing goals:\n\n1. import data files, with drag and drop and automatic file-type\n detection\n - powder diffraction data\n - spectrum data\n - any data that maps to a Pandas StructuredDataFrame\n2. rapid comparison of datasets into automatically generated\n visualizations with drag and drop\n - I don't want to plot things, I want to visualize them, the\n software should plot for me\n3. reasonable interoperability with python for more complex operations\n - matplotlib, bokeh, whatever, I want to do the quick\n visualizations and comparisons in a gui, and I will do all of\n the complicated analysis and crazy figure plotting in something\n more flexible like a Jupyter Notebook\n - strong clipboard integration\n - common file-saving scheme for all types of data\n4. saving my collected datasets and visualizations\n - Origin/QtiPlot software is not my cup of tea for actually\n analyzing data but its nice to save your collection of data and\n plots in a single spot\n - Jupyter Notebooks / Matplotlib are much nicer when it comes to\n analyzing data but all of that flexibility can screw things up\n in the future, it would be nice to have it all in one\n re-producible place that I can come back to at any time with a\n double click of the mouse\n5. reasonable exporting to excel\n - Excel is the most wide-spread format for sharing/visualizing 1-D\n datasets and these datasets are literally everywhere. A quick\n button to make an excel file to share with the non-programmers\n out there is critical (currently Windows only)\n\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://www.github.com/dvincentwest/radie", "keywords": "data visualization", "license": "GPLv2", "maintainer": "", "maintainer_email": "", "name": "radie", "package_url": "https://pypi.org/project/radie/", "platform": "", "project_url": "https://pypi.org/project/radie/", "project_urls": { "Homepage": "https://www.github.com/dvincentwest/radie" }, "release_url": "https://pypi.org/project/radie/0.1.4/", "requires_dist": [ "numpy", "pandas", "pyqtgraph" ], "requires_python": ">=3.5", "summary": "a python application to rapidly import and view experimental data", "version": "0.1.4" }, "last_serial": 4238034, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "a07c7e3d30fde00e3b5622f65c57ea83", "sha256": "a0c889f15bb648e1fc48022a0f9033494fa4f87e8a0ce22f222c81e7fc9ff9cc" }, "downloads": -1, "filename": "radie-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "a07c7e3d30fde00e3b5622f65c57ea83", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 105975, "upload_time": "2018-07-23T20:13:07", "url": "https://files.pythonhosted.org/packages/e1/ff/7dd2f907adbbe9e08a4f5eaa0ea84f96eac923c4c2c817abc52e7597a6a8/radie-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "213c545b6d75a49f607c2e13dc59b0aa", "sha256": "e8957f0e9051218811984a8aa9c90c2bbbf15f376d0d0d1fd380593b0f313bb8" }, "downloads": -1, "filename": "radie-0.1.1.tar.gz", "has_sig": false, "md5_digest": "213c545b6d75a49f607c2e13dc59b0aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 79114, "upload_time": "2018-07-23T20:13:09", "url": "https://files.pythonhosted.org/packages/fe/54/d32933a34bb3d7fa78703c75484c9071d997307d71434c22f972448bfa63/radie-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "c9847847550cb79bccdbff99b8bc3801", "sha256": "b8d2e52467a939b513195e8715dc381569306e5071a5ada60110cd2a63bb88d2" }, "downloads": -1, "filename": "radie-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "c9847847550cb79bccdbff99b8bc3801", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 105981, "upload_time": "2018-07-25T02:18:11", "url": "https://files.pythonhosted.org/packages/ea/58/78c4b6468683fa8cb82bb4fe04bc6b97351a96589614e4dd4da6fb458ccf/radie-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "87be377a797bff63db5a0c49738a28f9", "sha256": "334e535e777e481593df48d0f31d71a357e2240afaa3bf24f89d271160bfbb97" }, "downloads": -1, "filename": "radie-0.1.2.tar.gz", "has_sig": false, "md5_digest": "87be377a797bff63db5a0c49738a28f9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 79418, "upload_time": "2018-07-25T02:18:13", "url": "https://files.pythonhosted.org/packages/df/11/14a13bc6f4e05f3ea26c9138a4327adce864a6155b843a2f0e9780f45c3e/radie-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "0b8b3b97d60a11ac8f59a6091dbb290e", "sha256": "5e7111604580e666e7314dc109ae2a48aeccd2c146dabfa6201028fea0022bed" }, "downloads": -1, "filename": "radie-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "0b8b3b97d60a11ac8f59a6091dbb290e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 107777, "upload_time": "2018-07-26T17:56:21", "url": "https://files.pythonhosted.org/packages/46/e9/cc02e93244a8e0c39f4a607dac9bc8cd38f52941aaf6d57aefee6dedb1a6/radie-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5c27cb03ad0ad3cec329a382f3c50279", "sha256": "ceda79cdf0217a09b524bfe0fb2e272338e62c34a33849462f2d0d22320681f6" }, "downloads": -1, "filename": "radie-0.1.3.tar.gz", "has_sig": false, "md5_digest": "5c27cb03ad0ad3cec329a382f3c50279", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 79971, "upload_time": "2018-07-26T17:56:23", "url": "https://files.pythonhosted.org/packages/31/cf/668e79622ed07239b6f2c1f912bc0196a5d0b2a212b1304cb1ccbae700ee/radie-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "befa698946823daeaf5f2a056678263e", "sha256": "f8976ea95e2af0d4a44092d7d9597f1748f599238542a3ce3824c41888e15e2c" }, "downloads": -1, "filename": "radie-0.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "befa698946823daeaf5f2a056678263e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 112091, "upload_time": "2018-09-04T15:09:07", "url": "https://files.pythonhosted.org/packages/84/85/f9c4d2aa0ca459a8925771f48b02a9a887c2bd5e5323b5ea5bfd821b2f00/radie-0.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9c44c84995aea837852411ed5169b84f", "sha256": "00ee53e8d0d595a1390aaf8962b7a8f90b9dadaa06efa3a52f95381d745d7c69" }, "downloads": -1, "filename": "radie-0.1.4.tar.gz", "has_sig": false, "md5_digest": "9c44c84995aea837852411ed5169b84f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 81845, "upload_time": "2018-09-04T15:09:09", "url": "https://files.pythonhosted.org/packages/1f/43/1f963cfd80d986ab230bef8a2c2941b83b21af16bf2b505352356ea63251/radie-0.1.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "befa698946823daeaf5f2a056678263e", "sha256": "f8976ea95e2af0d4a44092d7d9597f1748f599238542a3ce3824c41888e15e2c" }, "downloads": -1, "filename": "radie-0.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "befa698946823daeaf5f2a056678263e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 112091, "upload_time": "2018-09-04T15:09:07", "url": "https://files.pythonhosted.org/packages/84/85/f9c4d2aa0ca459a8925771f48b02a9a887c2bd5e5323b5ea5bfd821b2f00/radie-0.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9c44c84995aea837852411ed5169b84f", "sha256": "00ee53e8d0d595a1390aaf8962b7a8f90b9dadaa06efa3a52f95381d745d7c69" }, "downloads": -1, "filename": "radie-0.1.4.tar.gz", "has_sig": false, "md5_digest": "9c44c84995aea837852411ed5169b84f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 81845, "upload_time": "2018-09-04T15:09:09", "url": "https://files.pythonhosted.org/packages/1f/43/1f963cfd80d986ab230bef8a2c2941b83b21af16bf2b505352356ea63251/radie-0.1.4.tar.gz" } ] }