#!/usr/bin/perl
use strict;
use warnings;

use GD::Graph::Polar;
use Graphics::ColorNames;

my $data = [
    [ 6 =>  35, 'blue'],
    [ 2 =>  90, 'red'],
    [ 5 => 180, 'green'],
    [ 7 => 210, 'DarkBlue'],
    [10 => 300, 'black'],
];

my $g = GD::Graph::Polar->new(
    rgbfile => '/usr/X11/share/X11/rgb.txt',
    size => 450,
    radius => 10,
);
$g->addString(10, $_, $_) for 0, 90, 180, 270;

for (@$data) {
    my ($r, $t, $c) = @$_;
    # Point
    $g->color($c);
    $g->addPoint($r => $t);
    $g->addGeoPoint($r => $t);
    # Label
    $g->color('black');
    $g->addString($r => $t, "$c ($r=>$t)");
    $g->addGeoString($r => $t, "Geo:$c ($r=>$t)");
}

my $file = "$0.png";
open my $fh, ">$file" or die "Can't write to $file";
print $fh $g->draw;
close $fh;
