ALT Linux Community general discussions
 help / color / mirror / Atom feed
* [Comm] gnuplot and python
@ 2005-05-17 11:24 Alexey Morsov
  2005-05-17 11:26 ` Michael Isachenkov
  0 siblings, 1 reply; 11+ messages in thread
From: Alexey Morsov @ 2005-05-17 11:24 UTC (permalink / raw)
  To: ALT Linux Community

Привет,

Пытаюсь в cgi скрипте на питоне использовать gnuplot (через Gnoplot 
модуль который практически просто pipe к gnuplot-у)
Если запустить его просто в консоли то он выводит png как положено...
а если как cgi то получаю Internal Server Error?
Где может быть "собака" ?

-- 
Всего наилучшего,
Системный Администратор ЗАО "ИК "РИКОМ-ТРАСТ"
Алексей Морсов
ICQ: 196766290
Jabber: Samurai@jabber.pibhe.com
http://www.ricom.ru
http://www.fondmarket.ru


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] gnuplot and python
  2005-05-17 11:24 [Comm] gnuplot and python Alexey Morsov
@ 2005-05-17 11:26 ` Michael Isachenkov
  2005-05-17 11:33   ` Alexey Morsov
  0 siblings, 1 reply; 11+ messages in thread
From: Michael Isachenkov @ 2005-05-17 11:26 UTC (permalink / raw)
  To: community

> а если как cgi то получаю Internal Server Error?
> Где может быть "собака" ?

а что в еррор-логе апача?

-- 
Best regards, Michael Isachenkov


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] gnuplot and python
  2005-05-17 11:26 ` Michael Isachenkov
@ 2005-05-17 11:33   ` Alexey Morsov
  2005-05-18  7:22     ` Alexey Morsov
  0 siblings, 1 reply; 11+ messages in thread
From: Alexey Morsov @ 2005-05-17 11:33 UTC (permalink / raw)
  To: community


Michael Isachenkov wrote:
>>а если как cgi то получаю Internal Server Error?
>>Где может быть "собака" ?
> 
> 
> а что в еррор-логе апача?
[Tue May 17 15:31:04 2005] [error] [client 192.168.130.95] malformed 
header from script. Bad header=\211PNG: graph.py
[Tue May 17 15:31:04 2005] [error] [client 192.168.130.95] File does not 
exist: /var/www/html/favicon.ico

причем тут favicon.ico я вообще не понимаю :(

Да и badheader тоже не понял :(
Указал же

print "Content-Type: image/x-png"
print


-- 
Всего наилучшего,
Системный Администратор ЗАО "ИК "РИКОМ-ТРАСТ"
Алексей Морсов
ICQ: 196766290
Jabber: Samurai@jabber.pibhe.com
http://www.ricom.ru
http://www.fondmarket.ru


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] gnuplot and python
  2005-05-17 11:33   ` Alexey Morsov
@ 2005-05-18  7:22     ` Alexey Morsov
  2005-05-18  9:48       ` php-coder
  0 siblings, 1 reply; 11+ messages in thread
From: Alexey Morsov @ 2005-05-18  7:22 UTC (permalink / raw)
  To: community


Alexey Morsov wrote:
> [Tue May 17 15:31:04 2005] [error] [client 192.168.130.95] malformed 
> header from script. Bad header=\211PNG: graph.py

Эта фигня продолжается... уггление пока не дает результатов...
Единственное что пишут - что это происходит вроде когда STDOUT апач 
кеширует и получается что content-type запаздывает...
Боже мой! У меня php скрипт делает тоже самое - гонит в stdout png :(
Там то работает! Значит не апач это.
Спецы по питону как cgi - подскажите хоть куда рыть то?

-- 
Всего наилучшего,
Системный Администратор ЗАО "ИК "РИКОМ-ТРАСТ"
Алексей Морсов
ICQ: 196766290
Jabber: Samurai@jabber.pibhe.com
http://www.ricom.ru
http://www.fondmarket.ru


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] gnuplot and python
  2005-05-18  7:22     ` Alexey Morsov
@ 2005-05-18  9:48       ` php-coder
  2005-05-18 10:07         ` Alexey Morsov
  0 siblings, 1 reply; 11+ messages in thread
From: php-coder @ 2005-05-18  9:48 UTC (permalink / raw)
  To: community


--- Alexey Morsov 2005-05-18 11:22:31 +0400
+++ php-coder 2005-05-18 16:35:25 +0700


    Ну раз уж ответов нет, то тогда я просто попробую что-нибудь
    предложить, высказать свои мысли, авось и поможет ;-)

> Эта фигня продолжается... уггление пока не дает результатов...

   :)))) нужно гуглить, а не углить ;) (ugly -- безобразный)

> Единственное что пишут - что это происходит вроде когда STDOUT апач 
> кеширует и получается что content-type запаздывает...

    хм... а попробовать принудительно отправить заголовок клиенту? Я бы
    попробовал именно так (аналог flush() в php)

    На Питоне, это выглядит так:

    import sys
    sys.stdout.write("Content-type: image/png\n\n")
    sys.stdout.flush()

    Внимание! Очень важно, чтобы перед выводом заголовка ничего более не
    выводилось! Т.е. никаких print'ов! Это должно быть первое, что получит
    браузер от сервера!

    Хотя, вы, наверное, это итак знаете ;)

> Спецы по питону как cgi - подскажите хоть куда рыть то?

    хм.. это было мнение кодера, который осилил лишь около 150 страниц
    книжки по Python ;))

-- 
+ php-coder
+ php-coder[at]altlinux[dot]ru



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] gnuplot and python
  2005-05-18  9:48       ` php-coder
@ 2005-05-18 10:07         ` Alexey Morsov
  2005-05-18 10:49           ` php-coder
  0 siblings, 1 reply; 11+ messages in thread
From: Alexey Morsov @ 2005-05-18 10:07 UTC (permalink / raw)
  To: community

php-coder wrote:
>>Эта фигня продолжается... уггление пока не дает результатов...
> 
> 
>    :)))) нужно гуглить, а не углить ;) (ugly -- безобразный)
> 
ну опечатался :)

>     На Питоне, это выглядит так:
> 
>     import sys
>     sys.stdout.write("Content-type: image/png\n\n")
>     sys.stdout.flush()
эта проблема решилась еще проще...
g.show() для gnuplot
и он все сразу отривал

Теперь другая байда - пока код находится вне функции - работает
как только переношу этот же код в ф-ю (а вне кода ессесно ее вызываю) то 
имею
image contains error :)

вот это мне уже савсем не ясно - какое его кошачье дело откуда я вызываю 
если все равно вывод идет на stdout?

-- 
Всего наилучшего,
Системный Администратор ЗАО "ИК "РИКОМ-ТРАСТ"
Алексей Морсов
ICQ: 196766290
Jabber: Samurai@jabber.pibhe.com
http://www.ricom.ru
http://www.fondmarket.ru


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] gnuplot and python
  2005-05-18 10:07         ` Alexey Morsov
@ 2005-05-18 10:49           ` php-coder
  2005-05-18 11:33             ` Alexey Morsov
  0 siblings, 1 reply; 11+ messages in thread
From: php-coder @ 2005-05-18 10:49 UTC (permalink / raw)
  To: community


--- Alexey Morsov 2005-05-18 14:07:20 +0400
+++ php-coder 2005-05-18 17:46:10 +0700

> Теперь другая байда - пока код находится вне функции - работает
> как только переношу этот же код в ф-ю (а вне кода ессесно ее вызываю) то 

    "Ну это у вас что-то с переменными, с областью видимости, к примеру,
    или еще чем-нибудь. Вам нужно код подправить." -- вас такой ответ устроит?
    Нет? Тогда нужно было сразу привести кусок кода, потому что телепаты летом
    в отпусках ;)) и вообще это здесь оффтоп. Где нужно задавать подобные
    вопросы вы знаете ;)

-- 
+ php-coder
+ php-coder[at]altlinux[dot]ru



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] gnuplot and python
  2005-05-18 10:49           ` php-coder
@ 2005-05-18 11:33             ` Alexey Morsov
  2005-05-19  8:23               ` Kolotov Alexandr
  2005-05-19  8:28               ` Kolotov Alexandr
  0 siblings, 2 replies; 11+ messages in thread
From: Alexey Morsov @ 2005-05-18 11:33 UTC (permalink / raw)
  To: community


php-coder wrote:
> --- Alexey Morsov 2005-05-18 14:07:20 +0400
> +++ php-coder 2005-05-18 17:46:10 +0700
> 
> 
>>Теперь другая байда - пока код находится вне функции - работает
>>как только переношу этот же код в ф-ю (а вне кода ессесно ее вызываю) то 
> 
> 
>     "Ну это у вас что-то с переменными, с областью видимости, к примеру,
>     или еще чем-нибудь. Вам нужно код подправить." -- вас такой ответ устроит?
>     Нет? Тогда нужно было сразу привести кусок кода, потому что телепаты летом
>     в отпусках ;)) и вообще это здесь оффтоп. Где нужно задавать подобные
>     вопросы вы знаете ;)
Знаю...... только там молчат как партизаны - крутые слишком видать

Код - симпл
#!/usr/bin/env python
#-*- coding: koi8-r -*-

import cgi
import MySQLdb
from Numeric import *
import Gnuplot


print "Content-Type: image/x-png"
print

form = cgi.FieldStorage()

if form.getvalue('show') == 'graph':
     show_graph()
if form.getvalue('show') == 'graphnail':
     show_graphnail()


def show_graph():
     g = Gnuplot.Gnuplot()
     g('set terminal png')
     g.title('A simple example')
     g('set data style linespoints')
     g.plot([[0,1.4], [1,5.8], [2,3.3], [3,4.2]])
     g.show()

Так - выдает что изображение испорчено

А если так

#!/usr/bin/env python
#-*- coding: koi8-r -*-

import cgi
import MySQLdb
from Numeric import *
import Gnuplot


print "Content-Type: image/x-png"
print

g = Gnuplot.Gnuplot()
g('set terminal png')
g.title('A simple example')
g('set data style linespoints')
g.plot([[0,1.4], [1,5.8], [2,3.3], [3,4.2]])
g.show()

то все рисует

-- 
Всего наилучшего,
Системный Администратор ЗАО "ИК "РИКОМ-ТРАСТ"
Алексей Морсов
ICQ: 196766290
Jabber: Samurai@jabber.pibhe.com
http://www.ricom.ru
http://www.fondmarket.ru


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] gnuplot and python
  2005-05-18 11:33             ` Alexey Morsov
@ 2005-05-19  8:23               ` Kolotov Alexandr
  2005-05-19 15:20                 ` Alexey Morsov
  2005-05-19  8:28               ` Kolotov Alexandr
  1 sibling, 1 reply; 11+ messages in thread
From: Kolotov Alexandr @ 2005-05-19  8:23 UTC (permalink / raw)
  To: community

> def show_graph():
>      g = Gnuplot.Gnuplot()
>      g('set terminal png')
>      g.title('A simple example')
>      g('set data style linespoints')
>      g.plot([[0,1.4], [1,5.8], [2,3.3], [3,4.2]])
>      g.show()
хм... странно...
может тогда объект создавать вне функции, вызывать функцию как функцию, 
а не как процедуру, и g.show() делать также вне функции?

-- 
С уважением, Kolotov Alexandr aka mr. Эбола
              отвечать: akmypost@mail.ru
                   ICQ: 100349254

    ---------------------------------------
   |  Registered Linux user       # 236664 |
    ---------------------------------------



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] gnuplot and python
  2005-05-18 11:33             ` Alexey Morsov
  2005-05-19  8:23               ` Kolotov Alexandr
@ 2005-05-19  8:28               ` Kolotov Alexandr
  1 sibling, 0 replies; 11+ messages in thread
From: Kolotov Alexandr @ 2005-05-19  8:28 UTC (permalink / raw)
  To: community

> то все рисует
а еще функция точно вызывается? может просто один Content-type льется, а 
условие не выполняется...

-- 
С уважением, Kolotov Alexandr aka mr. Эбола
              отвечать: akmypost@mail.ru
                   ICQ: 100349254

    ---------------------------------------
   |  Registered Linux user       # 236664 |
    ---------------------------------------


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [Comm] gnuplot and python
  2005-05-19  8:23               ` Kolotov Alexandr
@ 2005-05-19 15:20                 ` Alexey Morsov
  0 siblings, 0 replies; 11+ messages in thread
From: Alexey Morsov @ 2005-05-19 15:20 UTC (permalink / raw)
  To: community


Kolotov Alexandr wrote:

> хм... странно...
> может тогда объект создавать вне функции, вызывать функцию как функцию, 
> а не как процедуру, и g.show() делать также вне функции?
Нееааа... разобрался я с этой чудой...
Там действительно с буферезацией stdout заморочка - надо делать после 
Contenttype flush() и тогда все пашет
Только выкинул я этот модуль куда подальше - пишу свой...
тот походу с датами в кач-ве X работать не умеет :(

-- 
Всего наилучшего,
Системный Администратор ЗАО "ИК "РИКОМ-ТРАСТ"
Алексей Морсов
ICQ: 196766290
Jabber: Samurai@jabber.pibhe.com
http://www.ricom.ru
http://www.fondmarket.ru


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2005-05-19 15:20 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-05-17 11:24 [Comm] gnuplot and python Alexey Morsov
2005-05-17 11:26 ` Michael Isachenkov
2005-05-17 11:33   ` Alexey Morsov
2005-05-18  7:22     ` Alexey Morsov
2005-05-18  9:48       ` php-coder
2005-05-18 10:07         ` Alexey Morsov
2005-05-18 10:49           ` php-coder
2005-05-18 11:33             ` Alexey Morsov
2005-05-19  8:23               ` Kolotov Alexandr
2005-05-19 15:20                 ` Alexey Morsov
2005-05-19  8:28               ` Kolotov Alexandr

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git