--- a/js/flotr2/dev/notes.txt +++ b/js/flotr2/dev/notes.txt @@ -1,1 +1,87 @@ +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 + +