Синтаксическая ошибка gnuplot при использовании python - PullRequest
1 голос
/ 24 июня 2009

Я собираюсь выяснить, как Python и Gnuplot работают вместе.

http://wiki.aims.ac.za/mediawiki/index.php/Python:Gnuplot_module

Я нашел введение и хотел выполнить его на своем компьютере с Ubuntu.

import Gnuplot  

gp = Gnuplot.Gnuplot(persist = 1)  
gp('set data style lines')  

# The first data set (a quadratic)  
data1 = [[0, 0], [1, 1], [2, 4], [3, 9], [4, 16]]

# The second data set (a straight line)          
data2 = [[0, 0], [1, 1], [2, 2], [3, 3], [4, 4]]     


plot1 = Gnuplot.PlotItems.Data(data1, with_="lines", title="Quadratic")  
plot2 = Gnuplot.PlotItems.Data(data2, with_="points 3", title=None)  # No title  

gp.plot(plot1, plot2) 

Однако я получаю следующее сообщение об ошибке:

./demo.py   
./demo.py: line 2: syntax error near unexpected token `('  
./demo.py: line 2: `gp = Gnuplot.Gnuplot(persist = 1)'  

Есть идеи, что здесь может быть не так? Чтобы установить поддержку gnuplot для python, я установил python-gnuplot. Я пропускаю другой пакет?

Ответы [ 5 ]

2 голосов
/ 10 октября 2010

Вы поместили bangline в первую строку? то есть:

#!/usr/bin/python

Похоже, что не интерпретатор Python выполняет файл.

0 голосов
/ 24 июня 2009

Если я скопирую и вставлю ваш код в Emacs, я получу это:

gp = Gnuplot.Gnuplot(persist = 1)
 gp('set data style lines') 
data1 = [[0, 0], [1, 1], [2, 4], [3, 9], [4, 16]] # The first data set (a quadratic)
 data2 = [[0, 0], [1, 1], [2, 2], [3, 3], [4, 4]] # The second data set (a straight line) 
plot1 = Gnuplot.PlotItems.Data(data1, with_="lines", title="Quadratic")
 plot2 = Gnuplot.PlotItems.Data(data2, with_="points 3", title=None) # No title 
gp.plot(plot1, plot2)

Если я удаляю пробелы в начале трех строк, это работает для меня.

0 голосов
/ 24 июня 2009

Я использую вместо этого pylab. Домашняя страница Pylab

Из репозитариев Debian:

python-matplotlib - Python based plotting system in a style similar to Matlab.
0 голосов
/ 24 июня 2009

Ваш demo.py файл каким-то образом поврежден - убедитесь, что символ открытых скобок действительно таков. Загрузите установщик со страницы проекта , чтобы убедиться.

Вы можете получить доступ к текущей версии SVN файла (выберите загрузка версии HEAD).

0 голосов
/ 24 июня 2009

Ну, интерпретатор python считает, что при синтаксическом анализе произошла синтаксическая ошибка. Проверьте еще раз свои кавычки, убедитесь, что для удобства вы используете только двойные или одинарные кавычки во всем вашем сценарии (кроме тех случаев, когда вам нужно вставить буквальную кавычку, например "" или "").

Если вы не уверены, что пойдет не так, вы можете открыть интерактивный переводчик и написать в нем каждую строку.

...