Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将gnuplot与python结合使用的简短指南?_Python_Python 3.x_Gnuplot - Fatal编程技术网

如何将gnuplot与python结合使用的简短指南?

如何将gnuplot与python结合使用的简短指南?,python,python-3.x,gnuplot,Python,Python 3.x,Gnuplot,我正在尝试用Python绘制一个图形,使用Gnuplot。我很难找到如何开始的指南/教程 我想知道的是:哪些文件/程序是必需的?(我使用的是Ubuntu),从哪里开始 如果有人能推荐一个好的教程,那将非常感谢 谢谢大家! 你可以试试。它是我过去使用的gnuplot的接口。 在网站中,您有一些指示,并且在发行版中有一些示例脚本 事实上,从python直接运行gnuplot非常容易。py源代码将为您提供有价值的提示。有关其他替代方案,请参见和 正如其他人建议的那样,替代方法是使用matplotlib

我正在尝试用Python绘制一个图形,使用Gnuplot。我很难找到如何开始的指南/教程

我想知道的是:哪些文件/程序是必需的?(我使用的是Ubuntu),从哪里开始

如果有人能推荐一个好的教程,那将非常感谢

谢谢大家!

你可以试试。它是我过去使用的gnuplot的接口。 在网站中,您有一些指示,并且在发行版中有一些示例脚本

事实上,从python直接运行gnuplot非常容易。py源代码将为您提供有价值的提示。有关其他替代方案,请参见和


正如其他人建议的那样,替代方法是使用matplotlib。Matplotlib很棒,我将它用作我的主要可视化库。缺点是处理大量数据可能会变得很慢。在这种情况下,gnuplot是一个很好的选择。

您的方法取决于您已经拥有什么以及您想要使用什么。要使用gnuplot绘制图形,需要两件事:

  • 一个gnuplot脚本,描述结果图的外观(标题、轴描述、图例…)
  • 一个数据文件,其中保存要打印的数据
  • 如果您已经有了gnuplot脚本文件,并且只想使用python编写新的数据文件,那么这种方法在我的选项中是合理的。只需将数据导出到之前在数据文件中使用的指定格式,并从python中运行gnuplot

    import os
    import subprocess
    p = subprocess.Popen("gnuplot <scriptname>", shell = True)
    os.waitpid(p.pid, 0)
    
    导入操作系统
    导入子流程
    p=subprocess.Popen(“gnuplot”,shell=True)
    os.waitpid(p.pid,0)
    
    不要忘记,如果编写新的数据文件,您可能需要更改gnuplot脚本中数据文件的路径。比如说:

    plot "<path>" ...
    
    plot”“。。。
    
    如果您还没有想要使用的gnuplot脚本,那么从现在开始您肯定可以编写一个并使用它,但是使用python还有其他选择


    您可以看看哪一个绘图库在使用plot命令的方式上非常相似。它有很好的文档记录,网上有很多教程和示例,你可以从中学习和使用。

    作为gnuplot的粉丝,我使用这个gnuplot包装器

    下面是一个演示片段

    from gplot import *
    
    gplot.term('wxt')
    gplot.title('"gplot.py"').grid()
    gplot.xlabel('"time"')
    gplot([1,2,0,4,3.5], 'w l, sin(x), "<seq 10" us 1:(cos($1))')
    
    从gplot导入*
    gplot.term('wxt')
    gplot.title(“'gplot.py“).grid()
    gplot.xlabel(“‘时间’”)
    
    gplot([1,2,0,4,3.5],'wl,sin(x),“大约10年后,让我把注意力集中到

    Autogpy的目标是从python生成完整的gnuplot脚本(以及适当转储的数据)

    例如,python代码

    导入自动GPY
    将numpy作为np导入
    xx=np.linspace(0,6100)
    yy=np.sin(xx)
    zz=np.cos(xx)
    使用autogpy.AutogpyFigure(“测试图形”)作为图形:
    #类gnuplot语法
    图.绘图(r'与t“sin”、xx、yy线)
    #类matplotlib语法
    图.绘图(xx,zz,u='1:2',w='lines',label='cos')
    
    生成gnuplot脚本

    set terminal epslatex size 9.9cm,8.cm color colortext standalone      'phv,12 '  linewidth 2
    set output 'fig.latex.nice/plot_out.tex'
    
    p "fig__0__.dat" with lines t "sin",\
    "fig__1__.dat" u 1:2 with lines t "cos" 
    
    并转储可读数据

    支持乳胶、TIK和png终端,但可以轻松扩展到更多


    免责声明:我是作者。

    您好,我过去也遇到过同样的问题。我发现matplotlib方法更易于使用。看一看:我觉得它非常令人惊讶,而且有很多例子。下载按钮在右手边。当我尝试使用它时,我实际上看不到任何绘图@Acorbe@NoahP,谢谢你们的帖子。你们都收到了吗欠imagemagick执行转换'sudo sed-i'/PDF/s/none/read | write/'/etc/imagemagick-6/policy.xml`?如果这不能解决问题,请将您的问题发布到github上?提供更多详细信息?谢谢