autogpy:autognuplot.py-从python自动生成gnuplot图形(包括脚本和数据)

autogp的Python项目详细描述


autogpy-autognuplot.py

从python自动生成gnuplot图形/脚本/数据。

作者:Alessandro Corbetta,2019年
文档:https://acorbe.github.io/autogpy/

build status

它解决了什么问题?

autogpy在python中进行数据分析和在gnuplot中发布数据时,消除了烦人的代码/数据重复。使用接近gnuplot的语法,它自动生成gnuplot脚本并适当地转储数据。

在科学界,gnuplot是出版质量图的金标准。python正迅速成为数据分析的首选工具。虽然它提供了几个绘图选项,但在生产中通常首选gnuplot。

功能

  • 任何通过gnuplot命令获得的信息都可以生成plot
  • 任何gnuplot状态修改都可以实现
  • 多点
  • plt.hist类似gnuplot直方图图形生成器
  • Jupyter笔记本电脑图形预览
  • jupyter笔记本gnuplot脚本检查
  • Gnuplot终端Epslatex、Tikz/PGFPlot和JPG
  • 输出图形位于包含脚本、数据和makefile的文件夹中
  • 在生成图形的机器(例如,从更大的数据集)和“纸张书写”机器之间基于scp的简单同步。

  • Linux/MacOS
  • Python3

kwonw问题

  • 某些功能需要imagemagick和工作的gnuplot-tikz.lua。有些版本可能有漏洞。执行figure.display_fixes()以显示已知修复。

简而言之

获取autogpy

pip

pip install autogpy

来源

git clone git@github.com:acorbe/autogpy.git
pip install ./autogpy

使用量

importautogpyimportnumpyasnpxx=np.linspace(0,6,100)yy=np.sin(xx)zz=np.cos(xx)figure=autogpy.AutogpyFigure("test_figure","test1")figure.p_generic(r'u 1:2 with lines t "sin"',xx,yy)figure.p_generic(r'u 1:2 with lines t "cos"',xx,zz)figure.generate_gnuplot_file()figure.jupyter_show_pdflatex()# only in jupyter

将生成下图(也出现在Jupyter中)

example figure

最重要的是,将在文件夹test_figure中创建以下源和数据

$ ls test_figure

Makefile
sync_me.sh
test1__0__.dat
test1__1__.dat
test1__.core.gnu
test1__.jpg.gnu
test1__.pdflatex_compile.sh
test1__.pdflatex.gnu
test1__.tikz_compile.sh
test1__.tikz.gnu

使用make可以获得jpg、epsleax和tikz/pgfplot版本的图形。 注意,输入数据已经自动格式化。

检查test1__.pdflatex.gnu,负责epsleex版本的图,得到:

setterminalepslatexsize9.9cm,8.cmcolorcolortextstandalone'phv,12 'linewidth2setoutput'fig.latex.nice/plot_out.tex'load"test1__.core.gnu";

test1__.core.gnu读取:

p"test1__0__.dat"u1:2withlinest"sin",\
"test1__1__.dat"u1:2withlinest"cos"

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java静态键入和编写一个简单的矩阵库   java如何最小化层次结构的代码量   这是在Google云数据存储中使用Java按键查询的正确方法吗?   java Android php+mysql+json执行异步任务时出错   java Hadoop Hbase访问被拒绝异常   java如何在json中指定特定的对象路径   JavaSpringJPA/Hibernate在使用@modify和@Query进行特殊更新之前调用完整更新   java多个错误通知   java插入Linkedlist和Node   java将图像放在webview中并调整其宽度   Java没有真实属性的缺点是什么?   java“isGooglePlayServicesAvailable”(此)已被弃用   java托管HIPPO CMS   安卓 Java。网URI构造函数不是编码字符(&C)   java如何用hibernate映射Deque?   java传递枚举类型作为参数   java自由堆大小在Maven中不会增加   java如何使用hashmap和arraylist的循环逻辑?   java如何使用JDBC复制MySql数据库