Posts Tagged ‘graph’

drawing trees / graphs easily

You want to draw a binary tree / graph quickly. You’ve already used graphviz but you forgot its DOT language and you don’t want to read its documentation again. What do you do?

I found a nice Python project that does exactly this: pygraph.

Command to execute:

$ pygraph -u -e neato circle ab bc cd de ea

Output (circle.png):

See the project’s page for more examples and figures.

I sent a request to the author and he was kind to implement the --dot option that prints the .dot source in a file. This way you can easily tweak your graph. Don’t write the .dot file from scratch: do it quickly with pygraph, get a basic source, and refine it manually if necessary.

Categories: python Tags: , , ,

playing with Facebook’s graph search

June 19, 2014 Leave a comment

Here is a nice post on Facebook’s graph search with several examples: link.

Some commands:

  • People from [Your Town] who work at [Company Name]
  • Restaurants nearby liked by my friends
  • Local events this weekend
  • etc.

Drawing graphs in PHP with JpGraph

January 28, 2011 20 comments

JpGraph is an Object-Oriented Graph creating library for PHP >= 5.1 The library is completely written in PHP and ready to be used in any PHP scripts (both CGI/APXS/CLI versions of PHP are supported).

If you want to draw graphs in PHP, JpGraph is a good choice. Very easy to use yet powerful.


Here I suppose you have a public_html directory in your HOME and your PHP scripts are in public_html.

Download the latest jpgraph archive, put it in ~/public_html/lib and extract it. Now you will have a directory like ~/public_html/lib/jpgraph-3.5.0b1. Put a symbolic link on it with a simpler name:

cd ~/public_html/lib
ln -s jpgraph-3.5.0b1 jpgraph

Verify if the directory jpgraph has the correct permissions. Directories must be 755, while files must be 644. To correct permissions, you can use this script:


# place it in ~/public_html/lib/jpgraph and launch it
# it'll set the permissions recursively

find . -type d -print0 | xargs -0 chmod 755
find . -type f -print0 | xargs -0 chmod 644
chmod 755 .
chmod u+x $0

Test an example

Copy ~/public_html/lib/jpgraph/src/Examples/example0.php to ~/public_html. Modify the include lines:

# original:
#require_once ('jpgraph/jpgraph.php');
#require_once ('jpgraph/jpgraph_line.php');

# new:
require_once ('lib/jpgraph/src/jpgraph.php');
require_once ('lib/jpgraph/src/jpgraph_line.php');

Now call this file from your browser. The URL must be similar to this: http://localhost/~jabba/example0.php.


You might get an error saying “The function imageantialias() is not available in your PHP installation. Use the GD version that comes with PHP and not the standalone version.

Don’t worry. Open the file ~/public_html/lib/jpgraph/src/, find the function SetAntiAliasing and comment this line out like this:

// JpGraphError::RaiseL(25128);//('The function imageantialias() is not available in your PHP installation. Use the GD version that comes with PHP and not the standalone version.')

Update (20110215): Comment out just this line, not the whole function :)

This is a quick fix; we disabled antialiasing.

This subsection was updated, the original text was not clear. Thanks to Jon R. for pointing that out.

Categories: php Tags: , , , ,