- [x] data format & requirements - [x] how scales, axes and series interact - [ ] DOM structure: classes of axes, labels, cursors, points, plot, grid, chart - [ ] mouse interaction: zoom/unzoom, focus-hover (plot & legend), cursor lock/unlock, legend series toggle - [ ] `series.value` can be a template string if `time: true` - [ ] passing `then` to constructor to fire init after custom dom injection declarative opts: - [ ] `.data` - [ ] `.hooks` - [ ] init - [ ] setScale - [ ] setCursor - [ ] setSelect - [ ] setSeries - [ ] setData - [ ] setSize - [ ] drawClear - [ ] drawAxes - [ ] drawSeries - [ ] draw - [ ] ready - [ ] destroy - [ ] `.plugins` - [x] `.title` - [x] `.id, .class` - [x] `.width, .height` - [ ] `.gutters: {x, y}` - [x] `.scales` - [x] `.auto` - [x] `.time` - [x] `.range` (fn and array) - [x] `.from` - [x] `.distr` - [ ] `.min, .max` - [x] `.axes` - [x] `.show` - [x] `.side` - [x] `.stroke` - [x] `.scale` - [x] `.incrs` - [ ] `.split` - [x] `.values` (fn and stampsCfg array) - [x] `.space` (fn and number) - [x] `.size` - [x] `.gap` - [x] `.font` - [x] `.label` - [x] `.labelSize` - [x] `.labelFont` - [x] `.grid` - [x] `.show` - [x] `.stroke` - [x] `.width` - [x] `.dash` - [x] `.ticks` - [x] `.show` - [x] `.stroke` - [x] `.width` - [x] `.dash` - [x] `.size` - [ ] `.series` - [x] `.show` - [ ] `.paths` - [x] `.scale` - [x] `.label` - [x] `.stroke` - [x] `.fill` - [ ] `.alpha` - [x] `.width` - [x] `.dash` - [x] `.value` - [ ] `.values` - [x] `.band` - [x] `.spanGaps` - [ ] `.class` - [ ] `.points` - [ ] `.show` (fn or bool) - [ ] `.size` - [ ] `.width` - [ ] `.stroke` - [ ] `.fill` - [ ] `.cursor` - [ ] `.show` - [ ] `.points` - [ ] `.show` (fn or bool) - [ ] `.x`, `.y` - [ ] `.drag: {setSelect, setScale, x, y}` - [ ] `.sync: {key, setSeries}` - [ ] `.focus: {prox}` - [ ] `.lock` - [ ] `.focus: {alpha}` - [ ] `.select` - [ ] `.show` - [ ] `.legend` - [ ] `.show` instance properties and methods: - [x] `.root` - [ ] `.width, .height` - [ ] `.ctx` - [ ] `.bbox` - [ ] `.redraw()` - [ ] `.scales, .axes, .series, .cursor, .hooks, .data, .ctx, .select` (state inference) - [ ] `.batch()` - [ ] `.setData(), .setScale(), .setCursor(), .setSeries(), .setSelect(), .setSize()` - [ ] `.destroy()` - [ ] `.tzDate` - [ ] `.posToIdx(left)` - [ ] `.posToVal(left/top, scaleKey)` - [ ] `.valToPos(val, scaleKey)` static properties and functions: - [ ] `uPlot.fmtDate` - [ ] `uPlot.tzDate` - [ ] `uPlot.rangeNum` - [ ] `uPlot.assign`
series.valuecan be a template string iftime: truethento constructor to fire init after custom dom injectiondeclarative opts:
.data.hooks.plugins.title.id, .class.width, .height.gutters: {x, y}.scales.auto.time.range(fn and array).from.distr.min, .max.axes.show.side.stroke.scale.incrs.split.values(fn and stampsCfg array).space(fn and number).size.gap.font.label.labelSize.labelFont.grid.show.stroke.width.dash.ticks.show.stroke.width.dash.size.series.show.paths.scale.label.stroke.fill.alpha.width.dash.value.values.band.spanGaps.class.points.show(fn or bool).size.width.stroke.fill.cursor.show.points.show(fn or bool).x,.y.drag: {setSelect, setScale, x, y}.sync: {key, setSeries}.focus: {prox}.lock.focus: {alpha}.select.show.legend.showinstance properties and methods:
.root.width, .height.ctx.bbox.redraw().scales, .axes, .series, .cursor, .hooks, .data, .ctx, .select(state inference).batch().setData(), .setScale(), .setCursor(), .setSeries(), .setSelect(), .setSize().destroy().tzDate.posToIdx(left).posToVal(left/top, scaleKey).valToPos(val, scaleKey)static properties and functions:
uPlot.fmtDateuPlot.tzDateuPlot.rangeNumuPlot.assign