.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "Jifty::Plugin::Chart 3pm" .TH Jifty::Plugin::Chart 3pm "2009-07-15" "perl v5.12.4" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" Jifty::Plugin::Chart \- A charting API for Jifty .SH "SYNOPSIS" .IX Header "SYNOPSIS" In your \fIconfig.yml\fR: .PP .Vb 2 \& Plugins: \& \- Chart: {} .Ve .PP In your Mason templates: .PP .Vb 10 \& <% Jifty\->web\->chart( \& type => \*(AqBar\*(Aq, \& width => 400, \& height => 300, \& data => [ \& [ \*(Aq2004\*(Aq, \*(Aq2005\*(Aq, \*(Aq2006\*(Aq, \*(Aq2007\*(Aq ], # labels \& [ 14, 15, 17, 22 ], # first data set \& [ 22, 25, 20, 21 ], # second data set \& ], \& ) %> .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fB\s-1CAUTION:\s0\fR This plugin is experimental. The \s-1API\s0 \fIwill\fR change. .PP This plugin provides a charting \s-1API\s0 that can be used by Jifty applications to build data visualizations without regard to the underlying rendering mechanism. .PP As of this writing, the \s-1API\s0 is a barely veiled interface over Chart. However, I intend to expand the interface to apply to something like Maani's \s-1XML/SWF\s0 Charts or Imprise Javascript charts or even something like OpenLaszlo (or something Open Source and Perl if I can find or build such a thing in time). .SH "INTERFACE" .IX Header "INTERFACE" By adding this method to the plugin configuration for your Jifty application, you will cause Jifty::Web to inherit a new method, \f(CW\*(C`chart\*(C'\fR, which is the cornerstone of this \s-1API\s0. .PP This method is described in Jifty::Plugin::Chart::Web and an example is shown in the \*(L"\s-1SYNOPSIS\s0\*(R" above. .SH "CONFIGURATION" .IX Header "CONFIGURATION" Here is an example configuration for \fIconfig.yml\fR: .PP .Vb 7 \& Plugins: \& \- Chart: \& DefaultRenderer: PlotKit \& PreloadRenderers: \& \- XMLSWF \& \- SimpleBars \& \- App::Renderer::Custom .Ve .PP The available options are: .IP "DefaultRenderer" 4 .IX Item "DefaultRenderer" This is the name of the class to use as the default renderer. Jifty::Plugin::Chart::Renderer::Chart is the current default, but that could change in the future. It's recommended that you set this to your preference. .IP "PreloadRenderers" 4 .IX Item "PreloadRenderers" This is a list of other render classes to load during initialization. If they are not loaded during initialization some renderers may not work correctly the first time they are run because they are not able to inform Jifty of the \s-1CSS\s0 or \s-1JS\s0 files they need before that part of the page is already rendered. If you use the \*(L"renderer\*(R" option of \*(L"chart\*(R" in Jifty::Plugin::Chart::Web, then you should make sure any value you use is set here in the configuration to make sure it works properly. .SH "METHODS" .IX Header "METHODS" .SS "init" .IX Subsection "init" Adds the \*(L"chart\*(R" in Jifty::Plugin::Chart::Web method to Jifty::Web. .SS "init_renderer" .IX Subsection "init_renderer" .Vb 1 \& my $renderer = $chart_plugin\->init_renderer($renderer_class) .Ve .PP This is a helper method that is used by the \s-1API\s0 to initialize the renderer class. This is handled automatically so you probably shouldn't use this. .SH "SEE ALSO" .IX Header "SEE ALSO" Jifty::Plugin, Jifty::Web, Jifty::Plugin::Chart::Renderer, Jifty::Plugin::Chart::Renderer::Chart, Jifty::Plugin::Chart::View .SH "AUTHOR" .IX Header "AUTHOR" Andrew Sterling Hanenkamp \f(CW\*(C`\*(C'\fR .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" Copyright 2007 Boomer Consulting, Inc. .PP This is free software and may be modified and redistributed under the same terms as Perl itself.