{ "info": { "author": "Alessandro Corbetta", "author_email": "a.corbetta@tue.nl", "bugtrack_url": null, "classifiers": [], "description": "

autogpy - AutoGnuplot.py

\n\n

Automatic generation of gnuplot figures/scripts/data from python.

\n\n\n**Author:** [Alessandro Corbetta](http://corbetta.phys.tue.nl/), 2019 \n**Documentation:** https://acorbe.github.io/autogpy/ \n\n![build status](https://travis-ci.org/acorbe/autogpy.svg?branch=master)\n\n\n### Which problem does it solve?\n\n`autogpy` eliminates annoying duplications of code/data when doing data analytics in python and publication figures in gnuplot. Using a syntax close to gnuplot, it automatically generates gnuplot scripts and dumps suitably the data. \n\nIn the scientific community, [gnuplot](http://www.gnuplot.info/) is a gold standard for publication-quality plots. Python is quickly becoming a tool of choice for data analytics. While it comes with several options for plotting, often gnuplot is preferred in production.\n\n\n### Features\n+ anything that be obtained by the gnuplot command `plot` can be produced\n+ any gnuplot state modification can be achieved\n+ multiplots\n+ `plt.hist`-like gnuplot histogram figures generator\n+ jupyter notebook figure preview\n+ jupyter notebook gnuplot script inspection\n+ gnuplot terminals epslatex, tikz/pgfplot and jpg\n+ output figures are shipped in a folder that includes scripts, data and makefile\n+ easy scp-based synchronization between a machine in which the figures are generated (e.g. from even larger datasets) and the \"paper writing\" machine.\n\n**Works on**\n+ Linux/MacOs\n+ Python 3\n\n**KWONW ISSUES**\n+ Certain features require imagemagick and a working `gnuplot-tikz.lua`. Some versions of these might have bugs. Do `figure.display_fixes()` to show known fixes.\n\n\n\n## In a nutshell\n\n### Getting autogpy\n\nFrom `pip`\n\n```bash\npip install autogpy\n\n```\n\nFrom source\n\n```bash\ngit clone git@github.com:acorbe/autogpy.git\npip install ./autogpy\n```\n\n### Usage\n\n```python\nimport autogpy\nimport numpy as np\n\nxx = np.linspace(0,6,100)\nyy = np.sin(xx)\nzz = np.cos(xx)\n\nfigure = autogpy.AutogpyFigure(\"test_figure\",\"test1\")\n\nfigure.p_generic(r'u 1:2 with lines t \"sin\"',xx,yy)\nfigure.p_generic(r'u 1:2 with lines t \"cos\"',xx,zz)\nfigure.generate_gnuplot_file()\n\nfigure.jupyter_show_pdflatex() # only in jupyter\n\n```\n\n\nwill generate the following figure (also appearing in jupyter)\n\n\"example\n\n\n**Most importantly**, the following source and data will be created in the folder `test_figure` \n\n```bash\n$ ls test_figure\n\nMakefile\nsync_me.sh\ntest1__0__.dat\ntest1__1__.dat\ntest1__.core.gnu\ntest1__.jpg.gnu\ntest1__.pdflatex_compile.sh\ntest1__.pdflatex.gnu\ntest1__.tikz_compile.sh\ntest1__.tikz.gnu\n```\n\nWith `make` one can obtain jpg, epslatex, and tikz/pgfplot versions of the figure.\nNotice that the input data has been formatted automatically.\n\nInspecting `test1__.pdflatex.gnu`, responsible of the epslatex version of the figure, one gets:\n```gnuplot\nset terminal epslatex size 9.9cm,8.cm color colortext standalone 'phv,12 ' linewidth 2\nset output 'fig.latex.nice/plot_out.tex'\n\nload \"test1__.core.gnu\"; \n```\nwhile `test1__.core.gnu` reads:\n```gnuplot\np \"test1__0__.dat\" u 1:2 with lines t \"sin\",\\\n\"test1__1__.dat\" u 1:2 with lines t \"cos\"\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/acorbe/autogpy", "keywords": "", "license": "new BSD", "maintainer": "", "maintainer_email": "", "name": "autogpy", "package_url": "https://pypi.org/project/autogpy/", "platform": "", "project_url": "https://pypi.org/project/autogpy/", "project_urls": { "Homepage": "https://github.com/acorbe/autogpy" }, "release_url": "https://pypi.org/project/autogpy/0.1.4/", "requires_dist": null, "requires_python": "", "summary": "autogpy: AutoGnuplot.py - automatic generation of gnuplot figures (including script and data) from python", "version": "0.1.4" }, "last_serial": 5748813, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "5d7fa2fbef14e0bbf86675c3323622bd", "sha256": "733d75dda634793fbebd837c1086604e0a693c84c681f765937ba2951fe932b5" }, "downloads": -1, "filename": "autogpy-0.1.tar.gz", "has_sig": false, "md5_digest": "5d7fa2fbef14e0bbf86675c3323622bd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6815, "upload_time": "2019-05-16T11:26:32", "url": "https://files.pythonhosted.org/packages/de/34/acdb90b3556c2a832c32db39e15ae646d1897c2e6550e278c5e7d59d5aa2/autogpy-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "c0a87335cbde6810e9acfb43a73d50a8", "sha256": "1a36fb835ca53e4323ae2dba3fe51bafbff648c4829c0b46aab7bec9cd0cdea8" }, "downloads": -1, "filename": "autogpy-0.1.1.tar.gz", "has_sig": false, "md5_digest": "c0a87335cbde6810e9acfb43a73d50a8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9222, "upload_time": "2019-05-16T11:38:22", "url": "https://files.pythonhosted.org/packages/4a/5b/77c68749d88d1deb8f5542b4be953a2eaf49a6ca1a1e129fcd3aba66dd2f/autogpy-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "7a8d0af5db91a5e80b9bfb339e7ae711", "sha256": "425f0525165294b4e1a61508fe782a144683b62e08fb61e45e3fe2f08fe8692b" }, "downloads": -1, "filename": "autogpy-0.1.2.tar.gz", "has_sig": false, "md5_digest": "7a8d0af5db91a5e80b9bfb339e7ae711", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9219, "upload_time": "2019-05-16T11:43:32", "url": "https://files.pythonhosted.org/packages/9a/54/bbf6dc75b18087f07382be83476ad9360511837dac4a2edbae371b5464d3/autogpy-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "cc283f95526b76cd72eaa06ba4a3c1cc", "sha256": "793e3a1dc4db91681fbb25e9b404e481ebe5746ed9a0f7e2b9b3e04883852673" }, "downloads": -1, "filename": "autogpy-0.1.3.tar.gz", "has_sig": false, "md5_digest": "cc283f95526b76cd72eaa06ba4a3c1cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9232, "upload_time": "2019-05-16T11:47:51", "url": "https://files.pythonhosted.org/packages/56/77/5ffeed7ea79e1c7ba0f6293a83b4230273c08c370313962e4793b548988c/autogpy-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "8aebd452a884ab969ca5cb84b3ea6ef5", "sha256": "1fa12364d53d6f9005d847edd881ef20287bd385189d89f218c31267a45aab51" }, "downloads": -1, "filename": "autogpy-0.1.4.tar.gz", "has_sig": false, "md5_digest": "8aebd452a884ab969ca5cb84b3ea6ef5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13458, "upload_time": "2019-08-29T05:21:00", "url": "https://files.pythonhosted.org/packages/d7/27/6c95e67fd118904276ad01b440c78ec5b68aa26719b5d6c29eae1cc2889e/autogpy-0.1.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8aebd452a884ab969ca5cb84b3ea6ef5", "sha256": "1fa12364d53d6f9005d847edd881ef20287bd385189d89f218c31267a45aab51" }, "downloads": -1, "filename": "autogpy-0.1.4.tar.gz", "has_sig": false, "md5_digest": "8aebd452a884ab969ca5cb84b3ea6ef5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13458, "upload_time": "2019-08-29T05:21:00", "url": "https://files.pythonhosted.org/packages/d7/27/6c95e67fd118904276ad01b440c78ec5b68aa26719b5d6c29eae1cc2889e/autogpy-0.1.4.tar.gz" } ] }