Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I am getting the following error while plotting graph in gnuplot 4.4

gnuplot> set style fill transparent pattern 2 noborder 
                        ^
     "./clusterload_all.pg", line 16: ';' expected

Also some errors like this :

gdImageStringFT: Could not find/open font while printing string  45 with font Arial

gnuplot> plot "cpu.dat" using 1:2 with lines title "CPU% total" lw 5 lc 1,
                 '' using 1:3 with lines title "MEM% total" lw 5 lc 2,                      
'' using 1:4 with lines title "CPU% for clmServer" lw 5 lc 6,                     
'' using 1:5 with lines title "MEM% for clmServer" lw 5 lc 10,                     
'' using 1:8 with boxes fill transparent pattern 2 title "1: Uninstall Licenses" lw 2 lc 5,  
'' using 1:9 with boxes fill transparent pattern 2 title "2: Install Licenses" lw 2 lc 6,
'' using 1:10 with boxes fill transparent pattern 2 title "3: Query Installed Licenses" lw 2 lc 7,                     
'' using 1:11 with boxes fill transparent pattern 2 title "4: Creating Feature Codes" lw 2 lc 11,                     
'' using 1:12 with boxes fill transparent pattern 2 title "5: Register Feature Codes" lw 2 lc 3,                     
'' using 1:13 with boxes fill transparent pattern 2 title "6: Query Feature Codes" lw 2 lc 1,                     
'' using 1:14 with boxes fill transparent pattern 2 title "7: Unregister Feature Codes" lw 2 lc 21
                                                                 ^
     "./clusterload_all.pg", line 29: ';' expected

Could anyone please help me regarding this.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
114 views
Welcome To Ask or Share your Answers For Others

1 Answer

To manage the error you need to understand what happens in the line that generated it.

Gnuplot interpreter gives an help signing with the cursor "^" the first letter of the offending word and writing the line number where it is possible to find it (the line number if a script is loaded with load "myscript.gp" or gnuplot is invoked by command line asgnuplot myscript.gp).

The origin can be various since, until that offending word, the syntax seems to be acceptable.
Let me cite just a few examples:

  • A not correct order in the option sequence

    plot "<seq 1 20" with lines using 0:($1) # before "using" after "with"
    
  • A line currently accepted by a version of gnuplot but not from a different one (that differs not only for version or subversion number, but even only for compilation option)

Note: with the use of the backslash() it's possible to split on different lines a long long command as if it was written in a single line. It's cosy and clean especially in a script.
When the error is generated the output of this long long line is recomposed so the column of the cursor(^) can appear wrong if compared with the position of the offending word in the script.


To reproduce your specific error we can check only the kernel of your command with some different version of gnuplot.

set style fill transparent pattern 2 noborder

With the results reported below:

  • in gnuplot 4.1.0 and it gives me the same error message

       gnuplot> set style fill transparent pattern 2 noborder 
                               ^
                 ';' expected
    
  • in gnuplot 4.6.3 I have no error at all.

  • in a gnuplot linux Version 4.4 patchlevel 0 (last modified March 2010) with no error.
  • If you avoid the feature transparent you will avoid the error in the older version too (4.1.0).

Please verify once again the version you have on your system...
...and feel you free to update it as you can :-) it's rather old.

More seriously if you cannot upload the version you use, you can take hints about the past syntax from the old demo (i.e. http://gnuplot.sourceforge.net/demo_4.4/ )... or from the older ones. Usually there is backward compatibility, meanwhile the forward compatibility is more difficult to find.

ps> You can write that long command line from the internal interpreter or in a more cosy way you can write it in an external file (a script). You can load the script in gnuplot or with the command load "./clusterload_all.pg" inside the gnuplot interpreter or you can call with the command line gnuplot -persist ./clusterload_all.pg from the shell prompt.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...