Re: Graphing query results from within psql.

From: Sergey Konoplev <gray(dot)ru(at)gmail(dot)com>
To: Aleksey Tsalolikhin <atsaloli(dot)tech(at)gmail(dot)com>
Cc: pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: Graphing query results from within psql.
Date: 2013-02-14 02:17:00
Message-ID: CAL_0b1t9D4K5iATcmAxUAaL_6L_BF3Ccik+RCzDMqK_oE8DQ-w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Wed, Feb 13, 2013 at 5:17 PM, Aleksey Tsalolikhin
<atsaloli(dot)tech(at)gmail(dot)com> wrote:
> Below is an example of feeding query output to gnuplot without leaving psql.
> I'd like to call it as "select graph(select * from example)", just for fun.
> What do I need to learn to do that, please? Can I create a function that
> uses "\o"? I think not, because a function runs server-side and \o is a
> client side feature.

plpython/plperl/etc plus this way of calling

select just_for_fun_graph('select ... from ...', 'My Graph', 78, 24, ...)

will do the trick.

>
> This is not a production issue, just learning, for fun.
>
> # psql -U postgres
> psql (8.4.15)
> Type "help" for help.
>
> postgres=# \t
> Showing only tuples.
> postgres=# \a
> Output format is unaligned.
> postgres=# \f ' '
> Field separator is " ".
> postgres=# select * from example;
> 1 1
> 2 2
> 3 3
> 4 4
> postgres=# \o | /usr/bin/gnuplot
> postgres=# select 'set title "My Graph"; set terminal dumb 78 24; set key
> off; set ylabel "Time"; set xlabel "Servers";' || 'plot ''-'' with lines;' ;
> select * from example;
> postgres=# \o
>
> My Graph
> Time
> 4
> ++----------+----------+-----------+----------+-----------+---------**
> + + + + + +
> **** +
> | **** |
> 3.5 ++ **** ++
> | **** |
> | **** |
> 3 ++ *** ++
> | **** |
> | **** |
> 2.5 ++ **** ++
> | **** |
> | **** |
> 2 ++ *** ++
> | **** |
> | **** |
> 1.5 ++ **** ++
> | **** |
> + **** + + + + + +
> 1 **----------+----------+-----------+----------+-----------+---------++
> 1 1.5 2 2.5 3 3.5 4
> Servers
>
> postgres=#
>
> Best,
> Aleksey
>
> --
> CFEngine Trainings:
> Los Angeles, Feb 25 - 28. http://cf3la.eventbrite.com
> New Jersey, Apr 29 - May 2. http://cf3.eventbrite.com/

--
Sergey Konoplev
Database and Software Architect
http://www.linkedin.com/in/grayhemp

Phones:
USA +1 415 867 9984
Russia, Moscow +7 901 903 0499
Russia, Krasnodar +7 988 888 1979

Skype: gray-hemp
Jabber: gray(dot)ru(at)gmail(dot)com

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Ian Lawrence Barwick 2013-02-14 02:36:35 Re: Graphing query results from within psql.
Previous Message Aleksey Tsalolikhin 2013-02-14 01:17:26 Graphing query results from within psql.