PlotKit.txt
5.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
{% extends "basex.html" %}
{% load markup %}
{% block pageid %}code{% endblock %}
{% block title %}PlotKit Documentation{% endblock %}
{% block headers %}
<link href="doc.css" media="screen" rel="stylesheet" type="text/css" />
{% endblock %}
{% block content %}
<div class="page doc">
{% filter markdown %}
PlotKit
=======
[PlotKit][] is a Javascript graph plotting library. It is aimed at web
applications that require plotting series of data in modern web
browsers.
PlotKit requires [MochiKit][]. (1.3 or higher)
PlotKit supports both HTML Canvas and SVG, along with an
[emulated canvas for Internet Explorer][IECanvas].
PlotKit is easily extensible to include other rendering engines,
styles and layouts. Please pursue the documentation for more
information.
PlotKit is licensed under the BSD License, so you can include it in
your free or commercial applications without worrying.
PlotKit Components
==================
Base Classes
------------
* [Base][] : Common functionality that is used in other classes,
including default styles.
* [Layout][] : The default chart layout engine, supports bar, line and
pie charts.
* [Renderer][]: Customising the look of the output
Renderer Specific Implementations
---------------------------------
* [CanvasRenderer][]: Basic renderer using an HTML Canvas.
* [SVGRenderer][]: Basic renderer using SVG.
* [SweetCanvasRenderer][]: Customised Renderer that builds on CanvasRenderer to provide nicer looking charts.
* [SweetSVGRenderer][]: Customised renderer that builds on SVGRenderer to provide nicer looking charts.
Utility Classes
---------------
* [EasyPlot][]: Simple Wrapper around classes to provide one-line plotting.
Getting Started
===============
* [PlotKit Quick Start][QuickStart] - A thorough quick start to getting charts working for Safari, Mozilla, Firefox, Opera and IE.
* [SVG/Canvas Browser Support Status][Browser] - Quirks about browser support that you should know about.
* [Simple Canvas Demo][QuickstartCanvasDemo] - Very basic Canvas demo all contained in an HTML file.
* [Simple SVG Demo][QuickstartSVGDemo] - Very basic SVG demo all contained in an HTML file.
More Demos
==========
* Unit Tests [Canvas][CanvasTest], [SVG][SVGTest], [SweetCanvas][SCanvasTest], [SweetSVG][SSVGTest].
* [Dynamic Charting][DynamicTest].
* [Labels Example][]. Thanks to Christopher Armstrong.
* [Labels with Images][].
* [Axis Restrictions][].
Version History
===============
###PlotKit 0.8
* Total rewrite from [CanvasGraph 0.7][CanvasGraph]
###PlotKit 0.9
* Fixed some redraw issues with clear()
* Replaced IECanvas.HTC with ExplorerCanvas
* Added auto import and packed versions just like MochiKit.
* Added horizontal bar chart rendering mode.
* Added awareness of prototype.js and workaround Array/Object mutilation issues with MochiKit.
* Added EasyPlot for single line plotting with Ajax support.
* More tests, [dynamic charting][DynamicTest] and quickstart demos.
###PlotKit 0.9.1
* Make Sweet{Canvas/SVG}Renderers respect shouldFill.
* Fixed ignoring of maximum x and y values when setting xAxis/yAxis.
* Fixed typo for calculating yrange in Layout.js (thanks to
HubrisSonic).
* Changed SweetCanvasRenderer to use axisLineColor for drawing lines over
background (thanks to HubrisSonic).
* Fixed bug in y-axis tick drawing (thanks to Cliff).
* Fixed x-axis calculation bug when xAxisIsZero is false (thanks to
Loic Jeannin)
* Fixed xTicks drawing that exceed the bounds of the chart (thanks to
Cliff)
* Fixed barchart drawing with only 2 values (thanks to HubrisSonic)
* Hide pie chart labels of 0% (thanks to Attiks)
* Added optional field to addDatasetFromTable to include x-axis labels.
* Updated excanvas.js version to fix possible printing issues.
Road Map
========
###Version 0.9
* AutoSelectRenderer, automatically choose Canvas or SVG by auto detecting browser support.
###Version 0.10
* Point plots
* Defined Event System Support
* Animation support.
[QuickStart]: PlotKit.QuickStart.html
[CanvasGraph]: http://www.liquidx.net/canvasgraphjs/
[PlotKit]: http://www.liquidx.net/plotkit/
[MochiKit]: http://mochikit.com/
[IECanvas]: http://me.eae.net/archive/2005/12/29/canvas-in-ie/
[Base]: PlotKit.Base.html
[Styles]: PlotKit.Styles.html
[Layout]: PlotKit.Layout.html
[Renderer]: PlotKit.Renderer.html
[CanvasRenderer]: PlotKit.Canvas.html
[SVGRenderer]: PlotKit.SVG.html
[SweetCanvasRenderer]: PlotKit.SweetCanvas.html
[SweetSVGRenderer]: PlotKit.SweetSVG.html
[EasyPlot]: PlotKit.EasyPlot.html
[Browser]: SVGCanvasCompat.html
[CanvasTest]: http://media.liquidx.net/js/plotkit-tests/basic.html
[SVGTest]: http://media.liquidx.net/js/plotkit-tests/svg.html
[SCanvasTest]: http://media.liquidx.net/js/plotkit-tests/sweet.html
[SSVGTest]: http://media.liquidx.net/js/plotkit-tests/sweet-svg.html
[QuickstartCanvasDemo]: http://media.liquidx.net/js/plotkit-tests/quickstart.html
[QuickstartSVGDemo]: http://media.liquidx.net/js/plotkit-tests/quickstart-svg.html
[QuickstartEasyDemo]: http://media.liquidx.net/js/plotkit-tests/quickstart-easy.html
[DynamicTest]: http://media.liquidx.net/js/plotkit-tests/dynamic.html
[Labels Example]: http://media.liquidx.net/js/plotkit-tests/labels.html
[Labels with Images]: http://media.liquidx.net/js/plotkit-tests/labels-img.html
[Axis Restrictions]: http://media.liquidx.net/js/plotkit-tests/axis.html
{% endfilter %}
</div>
{% endblock %}