2013-05-12 4 views
0

У меня есть сценарий оболочки, который выполняет некоторые вычисления и отображает результаты. Я использовал gnuplot для построения результатов. У меня две проблемы. Раньше я запускал скрипт на моем cygwin, и все в порядке. Когда я попытался запустить его на Ubuntu (версия 10.04-wubi-версия), он не смог распознать файлы png (установить терминал png неизвестно). Я попытался установить (отсутствующие библиотеки, которые поддерживают «libgd2_2.0.36 ~ rc1 ~ dfsg», и обновить библиотеки ... не повезло !! Тогда я решил использовать set terminal pdf вместо того, чтобы найти его:gnuplot png unkown и pdf error

вот моя версия Gnuplot:

G N U P L O T 
Version 4.4 patchlevel 0 
last modified March 2010 
System: Linux 2.6.35-32-generic 

здесь выход типов терминалов:

 latex LaTeX picture environment 
     mf Metafont plotting standard 
     mif Frame maker MIF 3.00 format 
     mp MetaPost plotting standard 
     nec_cp6 NEC printer CP6, Epson LQ-800 [monocrome color draft] 
     okidata OKIDATA 320/321 Standard 
     pbm Portable bitmap [small medium large] [monochrome gray color] 
     pcl5 HP Designjet 750C, HP Laserjet III/IV, etc. (many options) 
     -->pdf PDF (Portable Document File) file driver 
     postscript PostScript graphics, including EPSF embedded files (*.eps) 
     pslatex LaTeX picture environment with PostScript \specials 
     pstex plain TeX with PostScript \specials 

Теперь, после того как я модифицировал скрипт, чтобы использовать PDF, я получаю эту ошибку (Примечание : некоторые из файлов PDF создаются).

line 0: ';' expected 

Опять же, я добавил ';' ко всем строкам .... и ошибка все еще появляется.

Вот часть моего сценария оболочки (что дает ошибку):

gnuplot << TOEND ; 
    set terminal pdf; 
    set output 'A.pdf'; 
    set autoscale ;       
    #unset log        
    #unset label        
    set xtic auto ;       
    set ytic auto ;       
    set title "title"; 
    set xlabel "x axis"; 
    set ylabel "y axis"; 
    ###################################### 
    #UPDATE: I have added double space to a void the error 
    ###################################### 
    plot "A1.tr" using 1:2 title "A" with lines 9, \ 
    "A2.tr" using 1:2 title "B" with lines 11  

выход (Примечание эта часть не созданных PDF-файлов):

line 0: invalid character \ --->pointing to 9, \ 
line 0: invalid command --->poiting to A2.tr 

остальные сценарий оболочки создает ту же ошибку (Примечание: вывод создается)

...... 
...... 
###################################### 
#UPDATE: @psibar pointed that 'ls' missing  
###################################### 
plot "results.tr" using 1:2 title "Results" with lines ls 9; 
                     ^
line 0: ';' expected---> pointing to 9 ; 

После долгого поиска, я думаю, проблема должна делать с версией UBUNTU и Gnuplot .... Я не хочу обновлять мою версию ubuntu .....

После устранения ошибок. Любые предложения о том, как получить «set terminal png», работают на ubuntu 10.04 ??

+1

Какие номера 9 и 11 делают там в конце 'команд plot'? Я думаю, что чего-то не хватает. Разве это не должно быть «... с линиями ls 9»? – psibar

+0

9 для стиля линии ... вы правы Мне не хватало «ls» ... Но все равно получаю: строка 0: недопустимый символ \ ---> указывающий после 9, \ строка 0: неверная команда --- > poiting to A2.tr – SimpleNEasy

+0

Я решил проблему. Я помещаю двойное пространство после «,», чтобы преодолеть ошибку. Проверьте обновление .... – SimpleNEasy

ответ

0

Для решения проблемы я добавил ls и два пробела после 9, \.

Окончательный ответ будет:

gnuplot << TOEND ; 
set terminal pdf; 
set output 'A.pdf'; 
set autoscale ;       
#unset log        
#unset label        
set xtic auto ;       
set ytic auto ;       
set title "title"; 
set xlabel "x axis"; 
set ylabel "y axis"; 
###################################### 
#UPDATE: I have added double space to a void the error 
# and @psibar pointed that 'ls' was missing 
###################################### 
plot "A1.tr" using 1:2 title "A" with lines ls 9, \ 
"A2.tr" using 1:2 title "B" with lines 11  
Смежные вопросы