gnuplot 脚本传递参数_Secur17y的博客-程序员秘密

技术标签: gnuplot  参数  学习笔记  

在使用gnuplot工具绘图想要传递参数的方法

在官方文档中明确了作为参数的字符变量集合:

ARG0,ARG1,...,ARG9

其中ARG0表示脚本名称,其余为传入的参数值;还有一个整数变量ARGC记录传入参数的个数。

文档中指出,可以传递参数的命令为call,它与load命令相似(load不能传递参数),如果已经进入gnuplot,则使用命令:

call "input_script_file" <param-1>  <param-2>  <param-3>... <param-9>

如果在shell脚本中使用,则使用命令:

gnuplot -c "input_script_filename"  <param-1>  <param-2>... <param-9>

要说明的是,如果脚本中含引号的内容作为参数,那么传递参数也是要加引号的,比如把绘制的文件、保存文件作为参数。

下面给出我应用时的一个例子

正常gnuplot脚本内容

set xrange [0:60]
set yrange [0:1.2]
set xlabel "Time(s)"
set ylabel "Rates"
set terminal png
set ouput "test.png"
set "test.data" w lp

如果我们需要批量绘图并保存,则需要将保存文件与绘图文件参数化,如下

set xrange [0:60]
set yrange [0:1.2]
set xlabel "Time(s)"
set ylabel "Rates"
set terminal png
set ouput ARG2
set ARG1 w lp

在shell脚本中的应用命令

#!/bin/bash
...
    gnuplot -c 'script.pl' "test.data" "test.png"
...

以上是本人在应用时的设置,欢迎评论指正!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Secur17y/article/details/90209256

智能推荐

RGB颜色转换16进制_rgba(180, 225, 202, 1)_NitefullSand的博客-程序员秘密

网页中表示颜色的常见方法有: 1.Color Name(颜色名称) 用颜色名称来指定颜色,这种方法简洁直观,一看就知道是什么颜色,但最大的缺点是颜色的名称太少,不能有效的表示一些较丰富的颜色 2.RGB(RGB记法) 3.HEX(十六进制记法) RGB记法和十六进制记法都能很好的表示出一些较为丰富的颜色,但是我们用到16进制的比较多,语法为#RRGGBB,下面说下我刚研究出来的转换方法:

【进阶教程】Axure快速创建动态面板制作左侧下拉菜单导航栏_axure导航栏菜单_m0_63108918的博客-程序员秘密

一、实现效果展示本节主要介绍在产品高保真原型图制作过程中,如何利用Axure创建左侧下拉菜单导航,以更好的帮助产品经理表达产品形态、领导者明确产品设计理念、开发人员迅速开发产品。先上图,展示最终达到的效果:二、插入动态面板首先插入一个矩形框,调整尺寸及颜色,输入文字【一级菜单1】,右侧面板名称命名为【一级菜单1】,并点击右键转化为【动态面板】,复制一个并重命名为【一级菜单2】。如下图:双击【一级菜单1】,进入动态面板管理,将此刻的状态【state1】重命名为【折叠】,如下图:

光的工作原理和阴影类型 学习笔记_三福门店的灯光属于直射光源还是漫反射光源_傲娇的小满的博客-程序员秘密

知识要点:自发光,直接光,间接光反弹(包括高光和漫反射),半透明,吸收以及阴影相关知识Emission自发光Reflection:Transmission 光线的传导。

翻转单词顺序列_dengyinyi1166的博客-程序员秘密

题目描述牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上。同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思。例如,“student. a am I”。后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”。Cat对一一的翻转这些单词顺序可不在行,你能帮助他么?...

[Unity小技巧] 避免手机触屏连续多次触发触摸touch事件_MokHoYin的博客-程序员秘密

很多同学在用Unity做手机游戏开发的时候,都会遇到这样一个问题:在Update()函数里检测屏幕触摸事件并作出响应,但是在手机上实际运行的时候,手指点击屏幕的时候,会连续响应多次触摸(touch)事件。

celery 详细教程-- Worker篇_celery worker_hpulfc的博客-程序员秘密

Celery--Worker准备:安装pip install celery easy_install celery 使用Redis作为Broker时 ,需安装 celery-with-redis, 一般使用rabbitmq作为Broker开始:使用启动一个worker简洁--celery -A proj.task worker --loglevel=info...

随便推点

fMRI数据分析处理原理及方法————转自网络_weixin_30758821的博客-程序员秘密

fMRI数据分析处理原理及方法来源: 整理文件的时候翻到的,来源已经找不到了囧感觉写得还是不错,贴在这里保存。近年来,血氧水平依赖性磁共振脑功能成像(Blood oxygenation level-dependent functional magnetic resonance imaging, BOLD-fMRI)技术得到极快的发展,除了与扫描硬件、扫描技术的进步有关外,更得...

Android用Kotlin写一个TabLayout+ViewPager_kotlin 实现tablayout+viewpager_Chinaklaus的博客-程序员秘密

今天突然有兴趣,想学习kotlin,就想撸一个页面切换。。implementation 'com.android.support:design:26.1.0'implementation 'com.android.support:support-v4:26.1.0'这两个是需要导入的包,升级了as 3.0把compile 换成了implementation在xml中写入&amp;lt;android.s...

linux(ubuntu)下的64位编译器编译32位程序_64位ubuntu 交叉编译32位程序_Sun_Shine_999的博客-程序员秘密

大家看到这个不要好奇,我也是在分析结构体大小时想到的,我们大家都知道在windows底下,我们想编译一个c程序(用64位和32位分别编译,特别不方便),除非是双系统,或者虚拟机,但是装这些有时候挺麻烦的,但是但是,在linux底下这可是很方便的,我们来看:一 .查看当前linux系统到底是多少位!!!方法一: getconf LONG_BIT方法二:我觉得这是最简单的东西了:也好记:unam

Okhttp添加拦截器_不负山河不负卿的博客-程序员秘密

OkHttpClient client = new OkHttpClient.Builder().addInterceptor(new Interceptor() { @Override public Response intercept(Chain chain) throws IOException { Requ...

vue请求参数按字母排序并追加随机数使用sm3加密_vue 请求参数排序_柴本柴柴的博客-程序员秘密

1.先安装sm3的依赖和引入npm install --save sm-cryptoimport 'jsbn'import { sm3 } from 'sm-crypto'2.排序方法export function objKeySort(obj) { // 排序的函数 var newkey = Object.keys(obj).sort() // 先用Object内置类的keys方法获取要排序对象的属性名,再利用Array原型上的sort方法对获取的属性名进行排序...