1 package MojoFacets::Gnuplot;
6 use base 'Mojolicious::Controller';
8 use Data::Dump qw(dump);
9 use Digest::MD5 qw(md5_hex);
10 use Text::Unaccent::PurePerl;
15 my $columns = $self->session('columns') || $self->redirect_to('/data/columns');
17 my $name = unac_string( join('.', 'items', @$columns) );
20 warn "# name $name\n";
22 my $url = '/export/' . $self->session('path') . '/' . $name;
23 my $dir = $self->app->home->rel_dir('public');
25 if ( -e "$dir/$url" ) {
28 foreach ( 1 .. $#$columns ) {
30 push @plot, qq|"$dir/$url" using 1:$n title "$columns->[$_]" with points|;
36 set output '$dir/$url.png'
40 if ( my $timefmt = $self->param('timefmt') ) {
44 set timefmt "$timefmt"
45 set format x "$timefmt"
50 #set xrange [ "2009-01-01":"2010-01-01" ]
53 $g .= "\n\nplot " . join(',', @plot) . "\n";
57 open(my $gnuplot, '|-', 'gnuplot') || die "gnuplot $!";
61 $self->redirect_to( "$url.png" );
62 #$self->render_text( "$url.png" );
64 $self->render_text("no graph for $url");