Sponsored Content
Full Discussion: gnuplotting in a shell
Top Forums Shell Programming and Scripting gnuplotting in a shell Post 302086676 by pau on Friday 25th of August 2006 04:55:11 PM
Old 08-25-2006
gnuplotting in a shell

Hi,

I am trying to automate the gnuplotting of more than 500 data files. For this, I have written a script which is working fine but for one issue...

The problem is that I have to plot the whole data and then plot the row starting with 60001 because I use a different symbol for it. Therefore I look in my data files for a particular row starting with 60001. As you can see below in my script, I do this with gawk. My data files look like
-----------------------------------------
##comment
##comment
45601 value1 value2 etc ...
34210 value1 value2 etc ...
21345 value1 value2 etc ...
.
.
60001 value1 value2 etc ...
34213 value1 value2 etc ...
--------------------------------------------

The row starting with 60001 changes its position in the different data files, so that I have to gawk it out.

The script is:

-----------------------------------------------------
#!/usr/bin/env zsh

for f in *.asc.gz ; do
eps_file=`basename $f .asc.gz`.eps

gnuplot <<EOF
unset key
set xrange [-15:15]
set yrange [-15:15]
set xlabel "X (pc)" font "Helvetica,12"
set ylabel "Y (pc)" font "Helvetica,12"
set terminal postscript eps enhanced ; set output "$eps_file"
set pointsize 1
plot "< zcat $f" using 3:4 with dots lt 8;
set pointsize 2;
replot "< zcat $f | gawk -v NAME=60001 '/AS/ {TIME=$4} $1==NAME {print TIME,$2,$3,$4,$5,$6,$7,$8,$11; exit}'" using 3:4 with points pt 6 lt -1 ;
unset output
EOF
done
---------------------------------------------------

(I print more columns that I need but this is not the problem)

When I give gnuplot the commands for a single data file I get what I want; when I execute the script in the directory with 500 files, I get

--------------------------------------
gawk: /AS/ {TIME=} ==NAME {print TIME,,,,; exit}
gawk: ^ syntax error
gawk: /AS/ {TIME=} ==NAME {print TIME,,,,; exit}
gawk: ^ syntax error
gawk: /AS/ {TIME=} ==NAME {print TIME,,,,; exit}
gawk: ^ syntax error
gawk: /AS/ {TIME=} ==NAME {print TIME,,,,; exit}
gawk: ^ syntax error
gawk: /AS/ {TIME=} ==NAME {print TIME,,,,; exit}
gawk: ^ syntax error
gawk: /AS/ {TIME=} ==NAME {print TIME,,,,; exit}
gawk: ^ syntax error

zcat: stdout: Broken pipe

gnuplot> plot "< zcat Splotch4_0010_part.asc.gz" using 3:4 with dots lt 8, "< zcat Splotch4_0010_part.asc.gz | gawk -v NAME=60001 '/AS/ {TIME=} ==NAME {print TIME,,,,; exit}'" using 3:4 with points pt 6 lt -1 ;
^
line 0: no data point found in specified file
------------------------------------------

and so on and so forth...

Can anybody help me?

Thanks in any case
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to run unix commands in a new shell inside a shell script?

Hi , I am having one situation in which I need to run some simple unix commands after doing "chroot" command in a shell script. Which in turn creates a new shell. So scenario is that - I need to have one shell script which is ran as a part of crontab - in this shell script I need to do a... (2 Replies)
Discussion started by: hkapil
2 Replies

2. AIX

Difference between writing Unix Shell script and AIX Shell Scripts

Hi, Please give me the detailed Differences between writing Unix Shell script and AIX Shell Scripts. Thanks in advance..... (0 Replies)
Discussion started by: haroonec
0 Replies

3. Linux

How to Start a Shell as Login shell instead of ordinary shell

Hi I tried with bash --login option. but the output is siva:~$ bash --login siva:~$ is there any way to make the shell ask for user id and password ( and login as different user instead of using sudo / su ) Thx in advance Siva (3 Replies)
Discussion started by: Sivaswami
3 Replies

4. Shell Programming and Scripting

Help need to make a shell script run for ffmpeg vhook watermaking in shell

i have a small problem getting a batxh shell script to run in shell this is the code the problem seems to be centered around the ffmpeg command, something maybe to do with the ' ' wrapping around the vhook part command this is a strange problem , if i take the ffmpeg command and... (1 Reply)
Discussion started by: wingchun22
1 Replies

5. Shell Programming and Scripting

How to run cmds after changing to a new env (shell) in a shell script

Hi, I am using HP-UNIX. I have a requirement as below I have to change env twice like: cadenv <env> cadenv <env> ccm start -d /dbpath ccm tar -xvf *.tar ccm rcv .... mv *.tar BACKUP but after I do the first cadenv <env> , I am unable to execute any of the later commands . ... (6 Replies)
Discussion started by: charlei
6 Replies

6. Shell Programming and Scripting

calling 'n' number of shell scripts based on dependency in one shell script.

Hello gurus, I have three korn shell script 3.1, 3.2, 3.3. I would like to call three shell script in one shell script. i m looking for something like this call 3.1; If 3.1 = "complete" then call 3.2; if 3.2 = ''COMPlete" then call 3.3; else exit The... (1 Reply)
Discussion started by: shashi369
1 Replies

7. Shell Programming and Scripting

Any shell or hack that makes the shell command line take vi commands?

basically i'm tired of hitting the left arrow a few dozen times when correcting a mistake or modifying a history command i'd like to use vim style key shortcuts while on the command line so that a 55 moves the cursor 55 places to the left... and i want all the other vi goodies, search of... (3 Replies)
Discussion started by: marqul
3 Replies

8. UNIX for Dummies Questions & Answers

Which of the following command displays your login shell in bash shell?

Options:: A)$shell B)echo $ bash C)echo $ O D)$ O (1 Reply)
Discussion started by: raghugowda
1 Replies

9. UNIX for Dummies Questions & Answers

Shell script to read lines in a text file and filter user data Shell Programming and Scripting

sxsaaas (3 Replies)
Discussion started by: VikrantD
3 Replies

10. Shell Programming and Scripting

Pass C shell array to another C shell script(csh) and shell(sh)

Dear Friends, Please help me on this my script name is send.csh In this i have written the statement like this set args = ( city state country price ) I want to pass this array to another c shell called receiver.csh. and i want to use it in this c shell or how to pass to... (2 Replies)
Discussion started by: SA_Palani
2 Replies
Dumpvalue(3pm)						 Perl Programmers Reference Guide					    Dumpvalue(3pm)

NAME
Dumpvalue - provides screen dump of Perl data. SYNOPSIS
use Dumpvalue; my $dumper = Dumpvalue->new; $dumper->set(globPrint => 1); $dumper->dumpValue(*::); $dumper->dumpvars('main'); my $dump = $dumper->stringify($some_value); DESCRIPTION
Creation A new dumper is created by a call $d = Dumpvalue->new(option1 => value1, option2 => value2) Recognized options: "arrayDepth", "hashDepth" Print only first N elements of arrays and hashes. If false, prints all the elements. "compactDump", "veryCompact" Change style of array and hash dump. If true, short array may be printed on one line. "globPrint" Whether to print contents of globs. "dumpDBFiles" Dump arrays holding contents of debugged files. "dumpPackages" Dump symbol tables of packages. "dumpReused" Dump contents of "reused" addresses. "tick", "quoteHighBit", "printUndef" Change style of string dump. Default value of "tick" is "auto", one can enable either double-quotish dump, or single-quotish by setting it to """ or "'". By default, characters with high bit set are printed as is. If "quoteHighBit" is set, they will be quoted. "usageOnly" rudimentary per-package memory usage dump. If set, "dumpvars" calculates total size of strings in variables in the package. unctrl Changes the style of printout of strings. Possible values are "unctrl" and "quote". subdump Whether to try to find the subroutine name given the reference. bareStringify Whether to write the non-overloaded form of the stringify-overloaded objects. quoteHighBit Whether to print chars with high bit set in binary or "as is". stopDbSignal Whether to abort printing if debugger signal flag is raised. Later in the life of the object the methods may be queries with get() method and set() method (which accept multiple arguments). Methods dumpValue $dumper->dumpValue($value); $dumper->dumpValue([$value1, $value2]); Prints a dump to the currently selected filehandle. dumpValues $dumper->dumpValues($value1, $value2); Same as "$dumper->dumpValue([$value1, $value2]);". stringify my $dump = $dumper->stringify($value [,$noticks] ); Returns the dump of a single scalar without printing. If the second argument is true, the return value does not contain enclosing ticks. Does not handle data structures. dumpvars $dumper->dumpvars('my_package'); $dumper->dumpvars('my_package', 'foo', '~bar$', '!......'); The optional arguments are considered as literal strings unless they start with "~" or "!", in which case they are interpreted as regular expressions (possibly negated). The second example prints entries with names "foo", and also entries with names which ends on "bar", or are shorter than 5 chars. set_quote $d->set_quote('"'); Sets "tick" and "unctrl" options to suitable values for printout with the given quote char. Possible values are "auto", "'" and """. set_unctrl $d->set_unctrl('unctrl'); Sets "unctrl" option with checking for an invalid argument. Possible values are "unctrl" and "quote". compactDump $d->compactDump(1); Sets "compactDump" option. If the value is 1, sets to a reasonable big number. veryCompact $d->veryCompact(1); Sets "compactDump" and "veryCompact" options simultaneously. set $d->set(option1 => value1, option2 => value2); get @values = $d->get('option1', 'option2'); perl v5.16.3 2013-03-04 Dumpvalue(3pm)
All times are GMT -4. The time now is 03:20 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy