87 lines
1.3 KiB
Plaintext
87 lines
1.3 KiB
Plaintext
Flotr 2 Architecture Notes
|
|
|
|
|
|
Global:
|
|
======
|
|
|
|
Flotr.js -
|
|
versioning information
|
|
browser detection
|
|
extension (plugins, graph types)
|
|
draw
|
|
clone / merge
|
|
tick size
|
|
tick formatter
|
|
engineering notation
|
|
magnitude
|
|
rad, pixel, floor
|
|
drawText
|
|
measureText
|
|
getBestTextAlign
|
|
align map
|
|
compatibility
|
|
|
|
|
|
Graph Architecture:
|
|
===================
|
|
|
|
Axis -
|
|
all series
|
|
orientation
|
|
ticks (major, minor)
|
|
scale (d2p, p2d, logarithmic)
|
|
notion of stacks
|
|
|
|
Series -
|
|
per 'data'
|
|
notion of range (x, y, min, max)
|
|
|
|
Graph -
|
|
DOM constructon
|
|
event attachment
|
|
options initialization
|
|
data range calculations
|
|
canvas spacing calculations
|
|
event normalization
|
|
draw methods
|
|
DOM cleanup
|
|
event cleanup
|
|
|
|
|
|
Utilities:
|
|
==========
|
|
|
|
Color
|
|
build colors
|
|
parse textual color data
|
|
convert colors
|
|
clone colors
|
|
|
|
Text
|
|
calculate text size
|
|
canvas size
|
|
html size
|
|
|
|
Date
|
|
formatting
|
|
constants
|
|
|
|
|
|
Spacing Calculation
|
|
===================
|
|
|
|
Flotr
|
|
calculate data
|
|
calculate margins
|
|
|
|
Chart
|
|
calculate Data Ranges - Explicit or auto data minimum, maximums
|
|
calculate Data Range Extensions - By chart type, extend data range with needs of chart type (ie. stacked bars, stacked lines)
|
|
add Chart Padding - By chart type
|
|
|
|
Text
|
|
use explicit margins
|
|
calculate label margins
|
|
calculate title margins
|
|
|