radiant-race_results-extension 1.4.3 → 1.4.5
Sign up to get free protection for your applications and to get access to all the features.
- data/app/controllers/admin/race_instances_controller.rb +1 -1
- data/app/controllers/race_instances_controller.rb +7 -1
- data/app/controllers/race_performances_controller.rb +8 -0
- data/app/models/race.rb +7 -0
- data/app/models/race_checkpoint.rb +27 -1
- data/app/models/race_checkpoint_time.rb +33 -5
- data/app/models/race_instance.rb +38 -9
- data/app/models/race_performance.rb +81 -3
- data/app/views/admin/races/_form.html.haml +1 -2
- data/app/views/race_clubs/show.html.haml +3 -3
- data/app/views/race_instances/_results_header.html.haml +10 -0
- data/app/views/race_instances/_splits_header.html.haml +9 -0
- data/app/views/race_instances/show.html.haml +17 -8
- data/app/views/race_instances/splits.html.haml +19 -14
- data/app/views/race_performances/_performance.html.haml +12 -2
- data/app/views/race_performances/_splits.html.haml +30 -8
- data/app/views/race_performances/show.html.haml +18 -76
- data/app/views/races/show.html.haml +2 -1
- data/config/locales/en.yml +20 -0
- data/config/routes.rb +1 -1
- data/db/migrate/20111103150827_mapping_routes.rb +22 -0
- data/db/migrate/20111115150827_finish_checkpoint.rb +8 -0
- data/lib/race_tags.rb +3 -3
- data/lib/radiant-race_results-extension.rb +1 -1
- data/public/images/race_results/sorts.png +0 -0
- data/public/javascripts/flot/API.txt +1201 -0
- data/public/javascripts/flot/FAQ.txt +76 -0
- data/public/javascripts/flot/LICENSE.txt +22 -0
- data/public/javascripts/flot/Makefile +9 -0
- data/public/javascripts/flot/NEWS.txt +508 -0
- data/public/javascripts/flot/PLUGINS.txt +137 -0
- data/public/javascripts/flot/README.txt +90 -0
- data/public/javascripts/flot/examples/ajax.html +143 -0
- data/public/javascripts/flot/examples/annotating.html +75 -0
- data/public/javascripts/flot/examples/arrow-down.gif +0 -0
- data/public/javascripts/flot/examples/arrow-left.gif +0 -0
- data/public/javascripts/flot/examples/arrow-right.gif +0 -0
- data/public/javascripts/flot/examples/arrow-up.gif +0 -0
- data/public/javascripts/flot/examples/basic.html +38 -0
- data/public/javascripts/flot/examples/data-eu-gdp-growth-1.json +4 -0
- data/public/javascripts/flot/examples/data-eu-gdp-growth-2.json +4 -0
- data/public/javascripts/flot/examples/data-eu-gdp-growth-3.json +4 -0
- data/public/javascripts/flot/examples/data-eu-gdp-growth-4.json +4 -0
- data/public/javascripts/flot/examples/data-eu-gdp-growth-5.json +4 -0
- data/public/javascripts/flot/examples/data-eu-gdp-growth.json +4 -0
- data/public/javascripts/flot/examples/data-japan-gdp-growth.json +4 -0
- data/public/javascripts/flot/examples/data-usa-gdp-growth.json +4 -0
- data/public/javascripts/flot/examples/graph-types.html +75 -0
- data/public/javascripts/flot/examples/hs-2004-27-a-large_web.jpg +0 -0
- data/public/javascripts/flot/examples/image.html +45 -0
- data/public/javascripts/flot/examples/index.html +44 -0
- data/public/javascripts/flot/examples/interacting-axes.html +97 -0
- data/public/javascripts/flot/examples/interacting.html +93 -0
- data/public/javascripts/flot/examples/layout.css +6 -0
- data/public/javascripts/flot/examples/multiple-axes.html +60 -0
- data/public/javascripts/flot/examples/navigate.html +118 -0
- data/public/javascripts/flot/examples/percentiles.html +57 -0
- data/public/javascripts/flot/examples/pie.html +756 -0
- data/public/javascripts/flot/examples/realtime.html +83 -0
- data/public/javascripts/flot/examples/resize.html +61 -0
- data/public/javascripts/flot/examples/selection.html +114 -0
- data/public/javascripts/flot/examples/setting-options.html +61 -0
- data/public/javascripts/flot/examples/stacking.html +77 -0
- data/public/javascripts/flot/examples/symbols.html +49 -0
- data/public/javascripts/flot/examples/thresholding.html +54 -0
- data/public/javascripts/flot/examples/time.html +71 -0
- data/public/javascripts/flot/examples/tracking.html +95 -0
- data/public/javascripts/flot/examples/turning-series.html +98 -0
- data/public/javascripts/flot/examples/visitors.html +90 -0
- data/public/javascripts/flot/examples/zooming.html +98 -0
- data/public/javascripts/flot/excanvas.js +1427 -0
- data/public/javascripts/flot/excanvas.min.js +1 -0
- data/public/javascripts/flot/jquery.colorhelpers.js +179 -0
- data/public/javascripts/flot/jquery.colorhelpers.min.js +1 -0
- data/public/javascripts/flot/jquery.flot.crosshair.js +167 -0
- data/public/javascripts/flot/jquery.flot.crosshair.min.js +1 -0
- data/public/javascripts/flot/jquery.flot.fillbetween.js +183 -0
- data/public/javascripts/flot/jquery.flot.fillbetween.min.js +1 -0
- data/public/javascripts/flot/jquery.flot.image.js +238 -0
- data/public/javascripts/flot/jquery.flot.image.min.js +1 -0
- data/public/javascripts/flot/jquery.flot.js +2599 -0
- data/public/javascripts/flot/jquery.flot.min.js +6 -0
- data/public/javascripts/flot/jquery.flot.navigate.js +336 -0
- data/public/javascripts/flot/jquery.flot.navigate.min.js +1 -0
- data/public/javascripts/flot/jquery.flot.pie.js +750 -0
- data/public/javascripts/flot/jquery.flot.pie.min.js +1 -0
- data/public/javascripts/flot/jquery.flot.resize.js +60 -0
- data/public/javascripts/flot/jquery.flot.resize.min.js +1 -0
- data/public/javascripts/flot/jquery.flot.selection.js +344 -0
- data/public/javascripts/flot/jquery.flot.selection.min.js +1 -0
- data/public/javascripts/flot/jquery.flot.stack.js +184 -0
- data/public/javascripts/flot/jquery.flot.stack.min.js +1 -0
- data/public/javascripts/flot/jquery.flot.symbol.js +70 -0
- data/public/javascripts/flot/jquery.flot.symbol.min.js +1 -0
- data/public/javascripts/flot/jquery.flot.threshold.js +103 -0
- data/public/javascripts/flot/jquery.flot.threshold.min.js +1 -0
- data/public/javascripts/flot/jquery.js +8316 -0
- data/public/javascripts/flot/jquery.min.js +23 -0
- data/public/javascripts/jquery.qtip.js +2675 -0
- data/public/javascripts/jquery.sparkline.js +1271 -0
- data/public/javascripts/races.js +245 -0
- data/public/stylesheets/sass/admin/races.sass +65 -70
- data/public/stylesheets/sass/jquery.flot.sass +416 -0
- data/public/stylesheets/sass/race_results.sass +38 -2
- data/radiant-race_results-extension.gemspec +1 -1
- metadata +95 -11
- data/public/javascripts/tablesorter.js +0 -3
@@ -0,0 +1,76 @@
|
|
1
|
+
Frequently asked questions
|
2
|
+
--------------------------
|
3
|
+
|
4
|
+
Q: How much data can Flot cope with?
|
5
|
+
|
6
|
+
A: Flot will happily draw everything you send to it so the answer
|
7
|
+
depends on the browser. The excanvas emulation used for IE (built with
|
8
|
+
VML) makes IE by far the slowest browser so be sure to test with that
|
9
|
+
if IE users are in your target group.
|
10
|
+
|
11
|
+
1000 points is not a problem, but as soon as you start having more
|
12
|
+
points than the pixel width, you should probably start thinking about
|
13
|
+
downsampling/aggregation as this is near the resolution limit of the
|
14
|
+
chart anyway. If you downsample server-side, you also save bandwidth.
|
15
|
+
|
16
|
+
|
17
|
+
Q: Flot isn't working when I'm using JSON data as source!
|
18
|
+
|
19
|
+
A: Actually, Flot loves JSON data, you just got the format wrong.
|
20
|
+
Double check that you're not inputting strings instead of numbers,
|
21
|
+
like [["0", "-2.13"], ["5", "4.3"]]. This is most common mistake, and
|
22
|
+
the error might not show up immediately because Javascript can do some
|
23
|
+
conversion automatically.
|
24
|
+
|
25
|
+
|
26
|
+
Q: Can I export the graph?
|
27
|
+
|
28
|
+
A: This is a limitation of the canvas technology. There's a hook in
|
29
|
+
the canvas object for getting an image out, but you won't get the tick
|
30
|
+
labels. And it's not likely to be supported by IE. At this point, your
|
31
|
+
best bet is probably taking a screenshot, e.g. with PrtScn.
|
32
|
+
|
33
|
+
|
34
|
+
Q: The bars are all tiny in time mode?
|
35
|
+
|
36
|
+
A: It's not really possible to determine the bar width automatically.
|
37
|
+
So you have to set the width with the barWidth option which is NOT in
|
38
|
+
pixels, but in the units of the x axis (or the y axis for horizontal
|
39
|
+
bars). For time mode that's milliseconds so the default value of 1
|
40
|
+
makes the bars 1 millisecond wide.
|
41
|
+
|
42
|
+
|
43
|
+
Q: Can I use Flot with libraries like Mootools or Prototype?
|
44
|
+
|
45
|
+
A: Yes, Flot supports it out of the box and it's easy! Just use jQuery
|
46
|
+
instead of $, e.g. call jQuery.plot instead of $.plot and use
|
47
|
+
jQuery(something) instead of $(something). As a convenience, you can
|
48
|
+
put in a DOM element for the graph placeholder where the examples and
|
49
|
+
the API documentation are using jQuery objects.
|
50
|
+
|
51
|
+
Depending on how you include jQuery, you may have to add one line of
|
52
|
+
code to prevent jQuery from overwriting functions from the other
|
53
|
+
libraries, see the documentation in jQuery ("Using jQuery with other
|
54
|
+
libraries") for details.
|
55
|
+
|
56
|
+
|
57
|
+
Q: Flot doesn't work with [insert name of Javascript UI framework]!
|
58
|
+
|
59
|
+
A: The only non-standard thing used by Flot is the canvas tag;
|
60
|
+
otherwise it is simply a series of absolute positioned divs within the
|
61
|
+
placeholder tag you put in. If this is not working, it's probably
|
62
|
+
because the framework you're using is doing something weird with the
|
63
|
+
DOM, or you're using it the wrong way.
|
64
|
+
|
65
|
+
A common problem is that there's display:none on a container until the
|
66
|
+
user does something. Many tab widgets work this way, and there's
|
67
|
+
nothing wrong with it - you just can't call Flot inside a display:none
|
68
|
+
container as explained in the README so you need to hold off the Flot
|
69
|
+
call until the container is actually displayed (or use
|
70
|
+
visibility:hidden instead of display:none or move the container
|
71
|
+
off-screen).
|
72
|
+
|
73
|
+
If you find there's a specific thing we can do to Flot to help, feel
|
74
|
+
free to submit a bug report. Otherwise, you're welcome to ask for help
|
75
|
+
on the forum/mailing list, but please don't submit a bug report to
|
76
|
+
Flot.
|
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2007-2009 IOLA and Ole Laursen
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person
|
4
|
+
obtaining a copy of this software and associated documentation
|
5
|
+
files (the "Software"), to deal in the Software without
|
6
|
+
restriction, including without limitation the rights to use,
|
7
|
+
copy, modify, merge, publish, distribute, sublicense, and/or sell
|
8
|
+
copies of the Software, and to permit persons to whom the
|
9
|
+
Software is furnished to do so, subject to the following
|
10
|
+
conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be
|
13
|
+
included in all copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
17
|
+
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
19
|
+
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
20
|
+
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
21
|
+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
22
|
+
OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,508 @@
|
|
1
|
+
Flot 0.7
|
2
|
+
--------
|
3
|
+
|
4
|
+
API changes:
|
5
|
+
|
6
|
+
Multiple axes support. Code using dual axes should be changed from
|
7
|
+
using x2axis/y2axis in the options to using an array (although
|
8
|
+
backwards-compatibility hooks are in place). For instance,
|
9
|
+
|
10
|
+
{
|
11
|
+
xaxis: { ... }, x2axis: { ... },
|
12
|
+
yaxis: { ... }, y2axis: { ... }
|
13
|
+
}
|
14
|
+
|
15
|
+
becomes
|
16
|
+
|
17
|
+
{
|
18
|
+
xaxes: [ { ... }, { ... } ],
|
19
|
+
yaxes: [ { ... }, { ... } ]
|
20
|
+
}
|
21
|
+
|
22
|
+
Note that if you're just using one axis, continue to use the
|
23
|
+
xaxis/yaxis directly (it now sets the default settings for the
|
24
|
+
arrays). Plugins touching the axes must be ported to take the extra
|
25
|
+
axes into account, check the source to see some examples.
|
26
|
+
|
27
|
+
A related change is that the visibility of axes is now auto-detected.
|
28
|
+
So if you were relying on an axis to show up even without any data in
|
29
|
+
the chart, you now need to set the axis "show" option explicitly.
|
30
|
+
|
31
|
+
"tickColor" on the grid options is now deprecated in favour of a
|
32
|
+
corresponding option on the axes, so { grid: { tickColor: "#000" }}
|
33
|
+
becomes { xaxis: { tickColor: "#000"}, yaxis: { tickColor: "#000"} },
|
34
|
+
but if you just configure a base color Flot will now autogenerate a
|
35
|
+
tick color by adding transparency. Backwards-compatibility hooks are
|
36
|
+
in place.
|
37
|
+
|
38
|
+
Final note: now that IE 9 is coming out with canvas support, you may
|
39
|
+
want to adapt the excanvas include to skip loading it in IE 9 (the
|
40
|
+
examples have been adapted thanks to Ryley Breiddal). An alternative
|
41
|
+
to excanvas using Flash has also surfaced, if your graphs are slow in
|
42
|
+
IE, you may want to give it a spin:
|
43
|
+
|
44
|
+
http://code.google.com/p/flashcanvas/
|
45
|
+
|
46
|
+
|
47
|
+
Changes:
|
48
|
+
|
49
|
+
- Support for specifying a bottom for each point for line charts when
|
50
|
+
filling them, this means that an arbitrary bottom can be used
|
51
|
+
instead of just the x axis (based on patches patiently provided by
|
52
|
+
Roman V. Prikhodchenko).
|
53
|
+
- New fillbetween plugin that can compute a bottom for a series from
|
54
|
+
another series, useful for filling areas between lines (see new
|
55
|
+
example percentiles.html for a use case).
|
56
|
+
- More predictable handling of gaps for the stacking plugin, now all
|
57
|
+
undefined ranges are skipped.
|
58
|
+
- Stacking plugin can stack horizontal bar charts.
|
59
|
+
- Navigate plugin now redraws the plot while panning instead of only
|
60
|
+
after the fact (can be disabled by setting the pan.frameRate option
|
61
|
+
to null), raised by lastthemy (issue 235).
|
62
|
+
- Date formatter now accepts %0m and %0d to get a zero-padded month or
|
63
|
+
day (issue raised by Maximillian Dornseif).
|
64
|
+
- Revamped internals to support an unlimited number of axes, not just
|
65
|
+
dual (sponsored by Flight Data Services,
|
66
|
+
www.flightdataservices.com).
|
67
|
+
- New setting on axes, "tickLength", to control the size of ticks or
|
68
|
+
turn them off without turning off the labels.
|
69
|
+
- Axis labels are now put in container divs with classes, for instance
|
70
|
+
labels in the x axes can be reached via ".xAxis .tickLabel".
|
71
|
+
- Support for setting the color of an axis (sponsored by Flight Data
|
72
|
+
Services, www.flightdataservices.com).
|
73
|
+
- Tick color is now auto-generated as the base color with some
|
74
|
+
transparency (unless you override it).
|
75
|
+
- Support for aligning ticks in the axes with "alignTicksWithAxis" to
|
76
|
+
ensure that they appear next to each other rather than in between,
|
77
|
+
at the expense of possibly awkward tick steps (sponsored by Flight
|
78
|
+
Data Services, www.flightdataservices.com).
|
79
|
+
- Support for customizing the point type through a callback when
|
80
|
+
plotting points and new symbol plugin with some predefined point
|
81
|
+
types (sponsored by Utility Data Corporation).
|
82
|
+
- Resize plugin for automatically redrawing when the placeholder
|
83
|
+
changes size, e.g. on window resizes (sponsored by Novus Partners).
|
84
|
+
A resize() method has been added to plot object facilitate this.
|
85
|
+
- Support Infinity/-Infinity for plotting asymptotes by hacking it
|
86
|
+
into +/-Number.MAX_VALUE (reported by rabaea.mircea).
|
87
|
+
- Support for restricting navigate plugin to not pan/zoom an axis (based
|
88
|
+
on patch by kkaefer).
|
89
|
+
- Support for providing the drag cursor for the navigate plugin as an
|
90
|
+
option (based on patch by Kelly T. Moore).
|
91
|
+
- Options for controlling whether an axis is shown or not (suggestion
|
92
|
+
by Timo Tuominen) and whether to reserve space for it even if it
|
93
|
+
isn't shown.
|
94
|
+
- New attribute $.plot.version with the Flot version as a string.
|
95
|
+
- The version comment is now included in the minified jquery.flot.min.js.
|
96
|
+
- New options.grid.minBorderMargin for adjusting the minimum margin
|
97
|
+
provided around the border (based on patch by corani, issue 188).
|
98
|
+
- Refactor replot behaviour so Flot tries to reuse the existing
|
99
|
+
canvas, adding shutdown() methods to the plot (based on patch by
|
100
|
+
Ryley Breiddal, issue 269). This prevents a memory leak in Chrome
|
101
|
+
and hopefully makes replotting faster for those who are using $.plot
|
102
|
+
instead of .setData()/.draw(). Also update jQuery to 1.5.1 to
|
103
|
+
prevent IE leaks fixed in jQuery.
|
104
|
+
- New real-time line chart example.
|
105
|
+
|
106
|
+
- New hooks: drawSeries, shutdown
|
107
|
+
|
108
|
+
Bug fixes:
|
109
|
+
|
110
|
+
- Fixed problem with findNearbyItem and bars on top of each other
|
111
|
+
(reported by ragingchikn, issue 242).
|
112
|
+
- Fixed problem with ticks and the border (based on patch from
|
113
|
+
ultimatehustler69, issue 236).
|
114
|
+
- Fixed problem with plugins adding options to the series objects.
|
115
|
+
- Fixed a problem introduced in 0.6 with specifying a gradient with {
|
116
|
+
brightness: x, opacity: y }.
|
117
|
+
- Don't use $.browser.msie, check for getContext on the created canvas
|
118
|
+
element instead and try to use excanvas if it's not found (fixes IE
|
119
|
+
9 compatibility).
|
120
|
+
- highlight(s, index) was looking up the point in the original s.data
|
121
|
+
instead of in the computed datapoints array, which breaks with
|
122
|
+
plugins that modify the datapoints (such as the stacking plugin).
|
123
|
+
Issue 316 reported by curlypaul924.
|
124
|
+
- More robust handling of axis from data passed in from getData()
|
125
|
+
(problem reported by Morgan).
|
126
|
+
- Fixed problem with turning off bar outline (issue 253, fix by Jordi
|
127
|
+
Castells).
|
128
|
+
- Check the selection passed into setSelection in the selection
|
129
|
+
plugin, to guard against errors when synchronizing plots (fix by Lau
|
130
|
+
Bech Lauritzen).
|
131
|
+
- Fix bug in crosshair code with mouseout resetting the crosshair even
|
132
|
+
if it is locked (fix by Lau Bech Lauritzen and Banko Adam).
|
133
|
+
- Fix bug with points plotting using line width from lines rather than
|
134
|
+
points.
|
135
|
+
- Fix bug with passing non-array 0 data (for plugins that don't expect
|
136
|
+
arrays, patch by vpapp1).
|
137
|
+
- Fix errors in JSON in examples so they work with jQuery 1.4.2
|
138
|
+
(fix reported by honestbleeps, issue 357).
|
139
|
+
- Fix bug with tooltip in interacting.html, this makes the tooltip
|
140
|
+
much smoother (fix by bdkahn). Fix related bug inside highlighting
|
141
|
+
handler in Flot.
|
142
|
+
- Use closure trick to make inline colorhelpers plugin respect
|
143
|
+
jQuery.noConflict(true), renaming the global jQuery object (reported
|
144
|
+
by Nick Stielau).
|
145
|
+
- Listen for mouseleave events and fire a plothover event with empty
|
146
|
+
item when it occurs to drop highlights when the mouse leaves the
|
147
|
+
plot (reported by by outspirit).
|
148
|
+
- Fix bug with using aboveData with a background (reported by
|
149
|
+
amitayd).
|
150
|
+
- Fix possible excanvas leak (report and suggested fix by tom9729).
|
151
|
+
- Fix bug with backwards compatibility for shadowSize = 0 (report and
|
152
|
+
suggested fix by aspinak).
|
153
|
+
- Adapt examples to skip loading excanvas (fix by Ryley Breiddal).
|
154
|
+
- Fix bug that prevent a simple f(x) = -x transform from working
|
155
|
+
correctly (fix by Mike, issue 263).
|
156
|
+
- Fix bug in restoring cursor in navigate plugin (reported by Matteo
|
157
|
+
Gattanini, issue 395).
|
158
|
+
- Fix bug in picking items when transform/inverseTransform is in use
|
159
|
+
(reported by Ofri Raviv, and patches and analysis by Jan and Tom
|
160
|
+
Paton, issue 334 and 467).
|
161
|
+
- Fix problem with unaligned ticks and hover/click events caused by
|
162
|
+
padding on the placeholder by hardcoding the placeholder padding to
|
163
|
+
0 (reported by adityadineshsaxena, Matt Sommer, Daniel Atos and some
|
164
|
+
other people, issue 301).
|
165
|
+
- Update colorhelpers plugin to avoid dying when trying to parse an
|
166
|
+
invalid string (reported by cadavor, issue 483).
|
167
|
+
|
168
|
+
|
169
|
+
Flot 0.6
|
170
|
+
--------
|
171
|
+
|
172
|
+
API changes:
|
173
|
+
|
174
|
+
1. Selection support has been moved to a plugin. Thus if you're
|
175
|
+
passing selection: { mode: something }, you MUST include the file
|
176
|
+
jquery.flot.selection.js after jquery.flot.js. This reduces the size
|
177
|
+
of base Flot and makes it easier to customize the selection as well as
|
178
|
+
improving code clarity. The change is based on a patch from andershol.
|
179
|
+
|
180
|
+
2. In the global options specified in the $.plot command,
|
181
|
+
"lines", "points", "bars" and "shadowSize" have been moved to a
|
182
|
+
sub-object called "series", i.e.
|
183
|
+
|
184
|
+
$.plot(placeholder, data, { lines: { show: true }})
|
185
|
+
|
186
|
+
should be changed to
|
187
|
+
|
188
|
+
$.plot(placeholder, data, { series: { lines: { show: true }}})
|
189
|
+
|
190
|
+
All future series-specific options will go into this sub-object to
|
191
|
+
simplify plugin writing. Backward-compatibility code is in place, so
|
192
|
+
old code should not break.
|
193
|
+
|
194
|
+
3. "plothover" no longer provides the original data point, but instead
|
195
|
+
a normalized one, since there may be no corresponding original point.
|
196
|
+
|
197
|
+
4. Due to a bug in previous versions of jQuery, you now need at least
|
198
|
+
jQuery 1.2.6. But if you can, try jQuery 1.3.2 as it got some
|
199
|
+
improvements in event handling speed.
|
200
|
+
|
201
|
+
|
202
|
+
Changes:
|
203
|
+
|
204
|
+
- Added support for disabling interactivity for specific data series
|
205
|
+
(request from Ronald Schouten and Steve Upton).
|
206
|
+
|
207
|
+
- Flot now calls $() on the placeholder and optional legend container
|
208
|
+
passed in so you can specify DOM elements or CSS expressions to make
|
209
|
+
it easier to use Flot with libraries like Prototype or Mootools or
|
210
|
+
through raw JSON from Ajax responses.
|
211
|
+
|
212
|
+
- A new "plotselecting" event is now emitted while the user is making
|
213
|
+
a selection.
|
214
|
+
|
215
|
+
- The "plothover" event is now emitted immediately instead of at most
|
216
|
+
10 times per second, you'll have to put in a setTimeout yourself if
|
217
|
+
you're doing something really expensive on this event.
|
218
|
+
|
219
|
+
- The built-in date formatter can now be accessed as
|
220
|
+
$.plot.formatDate(...) (suggestion by Matt Manela) and even
|
221
|
+
replaced.
|
222
|
+
|
223
|
+
- Added "borderColor" option to the grid (patch from Amaury Chamayou
|
224
|
+
and patch from Mike R. Williamson).
|
225
|
+
|
226
|
+
- Added support for gradient backgrounds for the grid, take a look at
|
227
|
+
the "setting options" example (based on patch from Amaury Chamayou,
|
228
|
+
issue 90).
|
229
|
+
|
230
|
+
- Gradient bars (suggestion by stefpet).
|
231
|
+
|
232
|
+
- Added a "plotunselected" event which is triggered when the selection
|
233
|
+
is removed, see "selection" example (suggestion by Meda Ugo);
|
234
|
+
|
235
|
+
- The option legend.margin can now specify horizontal and vertical
|
236
|
+
margins independently (suggestion by someone who's annoyed).
|
237
|
+
|
238
|
+
- Data passed into Flot is now copied to a new canonical format to
|
239
|
+
enable further processing before it hits the drawing routines. As a
|
240
|
+
side-effect, this should make Flot more robust in the face of bad
|
241
|
+
data (and fixes issue 112).
|
242
|
+
|
243
|
+
- Step-wise charting: line charts have a new option "steps" that when
|
244
|
+
set to true connects the points with horizontal/vertical steps
|
245
|
+
instead of diagonal lines.
|
246
|
+
|
247
|
+
- The legend labelFormatter now passes the series in addition to just
|
248
|
+
the label (suggestion by Vincent Lemeltier).
|
249
|
+
|
250
|
+
- Horizontal bars (based on patch by Jason LeBrun).
|
251
|
+
|
252
|
+
- Support for partial bars by specifying a third coordinate, i.e. they
|
253
|
+
don't have to start from the axis. This can be used to make stacked
|
254
|
+
bars.
|
255
|
+
|
256
|
+
- New option to disable the (grid.show).
|
257
|
+
|
258
|
+
- Added pointOffset method for converting a point in data space to an
|
259
|
+
offset within the placeholder.
|
260
|
+
|
261
|
+
- Plugin system: register an init method in the $.flot.plugins array
|
262
|
+
to get started, see PLUGINS.txt for details on how to write plugins
|
263
|
+
(it's easy). There are also some extra methods to enable access to
|
264
|
+
internal state.
|
265
|
+
|
266
|
+
- Hooks: you can register functions that are called while Flot is
|
267
|
+
crunching the data and doing the plot. This can be used to modify
|
268
|
+
Flot without changing the source, useful for writing plugins. Some
|
269
|
+
hooks are defined, more are likely to come.
|
270
|
+
|
271
|
+
- Threshold plugin: you can set a threshold and a color, and the data
|
272
|
+
points below that threshold will then get the color. Useful for
|
273
|
+
marking data below 0, for instance.
|
274
|
+
|
275
|
+
- Stack plugin: you can specify a stack key for each series to have
|
276
|
+
them summed. This is useful for drawing additive/cumulative graphs
|
277
|
+
with bars and (currently unfilled) lines.
|
278
|
+
|
279
|
+
- Crosshairs plugin: trace the mouse position on the axes, enable with
|
280
|
+
crosshair: { mode: "x"} (see the new tracking example for a use).
|
281
|
+
|
282
|
+
- Image plugin: plot prerendered images.
|
283
|
+
|
284
|
+
- Navigation plugin for panning and zooming a plot.
|
285
|
+
|
286
|
+
- More configurable grid.
|
287
|
+
|
288
|
+
- Axis transformation support, useful for non-linear plots, e.g. log
|
289
|
+
axes and compressed time axes (like omitting weekends).
|
290
|
+
|
291
|
+
- Support for twelve-hour date formatting (patch by Forrest Aldridge).
|
292
|
+
|
293
|
+
- The color parsing code in Flot has been cleaned up and split out so
|
294
|
+
it's now available as a separate jQuery plugin. It's included inline
|
295
|
+
in the Flot source to make dependency managing easier. This also
|
296
|
+
makes it really easy to use the color helpers in Flot plugins.
|
297
|
+
|
298
|
+
Bug fixes:
|
299
|
+
|
300
|
+
- Fixed two corner-case bugs when drawing filled curves (report and
|
301
|
+
analysis by Joshua Varner).
|
302
|
+
- Fix auto-adjustment code when setting min to 0 for an axis where the
|
303
|
+
dataset is completely flat on that axis (report by chovy).
|
304
|
+
- Fixed a bug with passing in data from getData to setData when the
|
305
|
+
secondary axes are used (issue 65, reported by nperelman).
|
306
|
+
- Fixed so that it is possible to turn lines off when no other chart
|
307
|
+
type is shown (based on problem reported by Glenn Vanderburg), and
|
308
|
+
fixed so that setting lineWidth to 0 also hides the shadow (based on
|
309
|
+
problem reported by Sergio Nunes).
|
310
|
+
- Updated mousemove position expression to the latest from jQuery (bug
|
311
|
+
reported by meyuchas).
|
312
|
+
- Use CSS borders instead of background in legend (fix printing issue 25
|
313
|
+
and 45).
|
314
|
+
- Explicitly convert axis min/max to numbers.
|
315
|
+
- Fixed a bug with drawing marking lines with different colors
|
316
|
+
(reported by Khurram).
|
317
|
+
- Fixed a bug with returning y2 values in the selection event (fix
|
318
|
+
by exists, issue 75).
|
319
|
+
- Only set position relative on placeholder if it hasn't already a
|
320
|
+
position different from static (reported by kyberneticist, issue 95).
|
321
|
+
- Don't round markings to prevent sub-pixel problems (reported by Dan
|
322
|
+
Lipsitt).
|
323
|
+
- Make the grid border act similarly to a regular CSS border, i.e.
|
324
|
+
prevent it from overlapping the plot itself. This also fixes a
|
325
|
+
problem with anti-aliasing when the width is 1 pixel (reported by
|
326
|
+
Anthony Ettinger).
|
327
|
+
- Imported version 3 of excanvas and fixed two issues with the newer
|
328
|
+
version. Hopefully, this will make Flot work with IE8 (nudge by
|
329
|
+
Fabien Menager, further analysis by Booink, issue 133).
|
330
|
+
- Changed the shadow code for lines to hopefully look a bit better
|
331
|
+
with vertical lines.
|
332
|
+
- Round tick positions to avoid possible problems with fractions
|
333
|
+
(suggestion by Fred, issue 130).
|
334
|
+
- Made the heuristic for determining how many ticks to aim for a bit
|
335
|
+
smarter.
|
336
|
+
- Fix for uneven axis margins (report and patch by Paul Kienzle) and
|
337
|
+
snapping to ticks (concurrent report and patch by lifthrasiir).
|
338
|
+
- Fixed bug with slicing in findNearbyItems (patch by zollman).
|
339
|
+
- Make heuristic for x axis label widths more dynamic (patch by
|
340
|
+
rickinhethuis).
|
341
|
+
- Make sure points on top take precedence when finding nearby points
|
342
|
+
when hovering (reported by didroe, issue 224).
|
343
|
+
|
344
|
+
Flot 0.5
|
345
|
+
--------
|
346
|
+
|
347
|
+
Backwards API change summary: Timestamps are now in UTC. Also
|
348
|
+
"selected" event -> becomes "plotselected" with new data, the
|
349
|
+
parameters for setSelection are now different (but backwards
|
350
|
+
compatibility hooks are in place), coloredAreas becomes markings with
|
351
|
+
a new interface (but backwards compatibility hooks are in place).
|
352
|
+
|
353
|
+
|
354
|
+
Interactivity: added a new "plothover" event and this and the
|
355
|
+
"plotclick" event now returns the closest data item (based on patch by
|
356
|
+
/david, patch by Mark Byers for bar support). See the revamped
|
357
|
+
"interacting with the data" example for some hints on what you can do.
|
358
|
+
|
359
|
+
Highlighting: you can now highlight points and datapoints are
|
360
|
+
autohighlighted when you hover over them (if hovering is turned on).
|
361
|
+
|
362
|
+
Support for dual axis has been added (based on patch by someone who's
|
363
|
+
annoyed and /david). For each data series you can specify which axes
|
364
|
+
it belongs to, and there are two more axes, x2axis and y2axis, to
|
365
|
+
customize. This affects the "selected" event which has been renamed to
|
366
|
+
"plotselected" and spews out { xaxis: { from: -10, to: 20 } ... },
|
367
|
+
setSelection in which the parameters are on a new form (backwards
|
368
|
+
compatible hooks are in place so old code shouldn't break) and
|
369
|
+
markings (formerly coloredAreas).
|
370
|
+
|
371
|
+
Timestamps in time mode are now displayed according to
|
372
|
+
UTC instead of the time zone of the visitor. This affects the way the
|
373
|
+
timestamps should be input; you'll probably have to offset the
|
374
|
+
timestamps according to your local time zone. It also affects any
|
375
|
+
custom date handling code (which basically now should use the
|
376
|
+
equivalent UTC date mehods, e.g. .setUTCMonth() instead of
|
377
|
+
.setMonth().
|
378
|
+
|
379
|
+
Added support for specifying the size of tick labels (axis.labelWidth,
|
380
|
+
axis.labelHeight). Useful for specifying a max label size to keep
|
381
|
+
multiple plots aligned.
|
382
|
+
|
383
|
+
Markings, previously coloredAreas, are now specified as ranges on the
|
384
|
+
axes, like { xaxis: { from: 0, to: 10 }}. Furthermore with markings
|
385
|
+
you can now draw horizontal/vertical lines by setting from and to to
|
386
|
+
the same coordinate (idea from line support patch by by Ryan Funduk).
|
387
|
+
|
388
|
+
The "fill" option can now be a number that specifies the opacity of
|
389
|
+
the fill.
|
390
|
+
|
391
|
+
You can now specify a coordinate as null (like [2, null]) and Flot
|
392
|
+
will take the other coordinate into account when scaling the axes
|
393
|
+
(based on patch by joebno).
|
394
|
+
|
395
|
+
New option for bars "align". Set it to "center" to center the bars on
|
396
|
+
the value they represent.
|
397
|
+
|
398
|
+
setSelection now takes a second parameter which you can use to prevent
|
399
|
+
the method from firing the "plotselected" handler.
|
400
|
+
|
401
|
+
Using the "container" option in legend now overwrites the container
|
402
|
+
element instead of just appending to it (fixes infinite legend bug,
|
403
|
+
reported by several people, fix by Brad Dewey).
|
404
|
+
|
405
|
+
Fixed a bug in calculating spacing around the plot (reported by
|
406
|
+
timothytoe). Fixed a bug in finding max values for all-negative data
|
407
|
+
sets. Prevent the possibility of eternal looping in tick calculations.
|
408
|
+
Fixed a bug when borderWidth is set to 0 (reported by
|
409
|
+
Rob/sanchothefat). Fixed a bug with drawing bars extending below 0
|
410
|
+
(reported by James Hewitt, patch by Ryan Funduk). Fixed a
|
411
|
+
bug with line widths of bars (reported by MikeM). Fixed a bug with
|
412
|
+
'nw' and 'sw' legend positions. Improved the handling of axis
|
413
|
+
auto-scaling with bars. Fixed a bug with multi-line x-axis tick
|
414
|
+
labels (reported by Luca Ciano). IE-fix help by Savage Zhang.
|
415
|
+
|
416
|
+
|
417
|
+
Flot 0.4
|
418
|
+
--------
|
419
|
+
|
420
|
+
API changes: deprecated axis.noTicks in favor of just specifying the
|
421
|
+
number as axis.ticks. So "xaxis: { noTicks: 10 }" becomes
|
422
|
+
"xaxis: { ticks: 10 }"
|
423
|
+
|
424
|
+
Time series support. Specify axis.mode: "time", put in Javascript
|
425
|
+
timestamps as data, and Flot will automatically spit out sensible
|
426
|
+
ticks. Take a look at the two new examples. The format can be
|
427
|
+
customized with axis.timeformat and axis.monthNames, or if that fails
|
428
|
+
with axis.tickFormatter.
|
429
|
+
|
430
|
+
Support for colored background areas via grid.coloredAreas. Specify an
|
431
|
+
array of { x1, y1, x2, y2 } objects or a function that returns these
|
432
|
+
given { xmin, xmax, ymin, ymax }.
|
433
|
+
|
434
|
+
More members on the plot object (report by Chris Davies and others).
|
435
|
+
"getData" for inspecting the assigned settings on data series (e.g.
|
436
|
+
color) and "setData", "setupGrid" and "draw" for updating the contents
|
437
|
+
without a total replot.
|
438
|
+
|
439
|
+
The default number of ticks to aim for is now dependent on the size of
|
440
|
+
the plot in pixels. Support for customizing tick interval sizes
|
441
|
+
directly with axis.minTickSize and axis.tickSize.
|
442
|
+
|
443
|
+
Cleaned up the automatic axis scaling algorithm and fixed how it
|
444
|
+
interacts with ticks. Also fixed a couple of tick-related corner case
|
445
|
+
bugs (one reported by mainstreetmark, another reported by timothytoe).
|
446
|
+
|
447
|
+
The option axis.tickFormatter now takes a function with two
|
448
|
+
parameters, the second parameter is an optional object with
|
449
|
+
information about the axis. It has min, max, tickDecimals, tickSize.
|
450
|
+
|
451
|
+
Added support for segmented lines (based on patch from Michael
|
452
|
+
MacDonald) and for ignoring null and bad values (suggestion from Nick
|
453
|
+
Konidaris and joshwaihi).
|
454
|
+
|
455
|
+
Added support for changing the border width (joebno and safoo).
|
456
|
+
Label colors can be changed via CSS by selecting the tickLabel class.
|
457
|
+
|
458
|
+
Fixed a bug in handling single-item bar series (reported by Emil
|
459
|
+
Filipov). Fixed erratic behaviour when interacting with the plot
|
460
|
+
with IE 7 (reported by Lau Bech Lauritzen). Prevent IE/Safari text
|
461
|
+
selection when selecting stuff on the canvas.
|
462
|
+
|
463
|
+
|
464
|
+
|
465
|
+
Flot 0.3
|
466
|
+
--------
|
467
|
+
|
468
|
+
This is mostly a quick-fix release because jquery.js wasn't included
|
469
|
+
in the previous zip/tarball.
|
470
|
+
|
471
|
+
Support clicking on the plot. Turn it on with grid: { clickable: true },
|
472
|
+
then you get a "plotclick" event on the graph placeholder with the
|
473
|
+
position in units of the plot.
|
474
|
+
|
475
|
+
Fixed a bug in dealing with data where min = max, thanks to Michael
|
476
|
+
Messinides.
|
477
|
+
|
478
|
+
Include jquery.js in the zip/tarball.
|
479
|
+
|
480
|
+
|
481
|
+
Flot 0.2
|
482
|
+
--------
|
483
|
+
|
484
|
+
Added support for putting a background behind the default legend. The
|
485
|
+
default is the partly transparent background color. Added
|
486
|
+
backgroundColor and backgroundOpacity to the legend options to control
|
487
|
+
this.
|
488
|
+
|
489
|
+
The ticks options can now be a callback function that takes one
|
490
|
+
parameter, an object with the attributes min and max. The function
|
491
|
+
should return a ticks array.
|
492
|
+
|
493
|
+
Added labelFormatter option in legend, useful for turning the legend
|
494
|
+
labels into links.
|
495
|
+
|
496
|
+
Fixed a couple of bugs.
|
497
|
+
|
498
|
+
The API should now be fully documented.
|
499
|
+
|
500
|
+
Patch from Guy Fraser to make parts of the code smaller.
|
501
|
+
|
502
|
+
API changes: Moved labelMargin option to grid from x/yaxis.
|
503
|
+
|
504
|
+
|
505
|
+
Flot 0.1
|
506
|
+
--------
|
507
|
+
|
508
|
+
First public release.
|