Commit Graph

317 Commits

Author SHA1 Message Date
Evert Timberg
8e68481ec4 Remove const me = this pattern (#9646) 2021-09-14 07:37:22 -04:00
Alex Van Liew
f8a9d60fd5 [feat] support crossAlign on mirrored y-axis (#9563) 2021-08-18 07:48:36 -04:00
Jacco van den Berg
259f8e8471 lower default value of grid z index so it draws behind chart elements (#9426) 2021-07-16 11:16:31 -04:00
Evert Timberg
11045a731a Fix center axis title positions (#9413)
* Fix the title positions for center positioned axes

* Handle center position for vertical axes

* Tests
2021-07-15 08:20:22 -04:00
Evert Timberg
df49447867 Limit Math.asin inputs to the range [-1, 1] (#9410) 2021-07-14 09:14:29 +03:00
Jukka Kurkela
a8d083ac24 Apply maxTicksLimit to grid when ticks are hidden (#9277) 2021-06-18 14:11:55 -04:00
Evert Timberg
9db3680440 null or undefined should skip grid lines in the time scale (#9252)
* `null` or `undefined` should skip grid lines in the time scale

* Refactor implementation per code review
2021-06-12 10:47:14 -04:00
Jukka Kurkela
a6f0b37dfe Further improve linear tick collision estimation (#9129)
* Further improve linear tick collision estimation

* More tolerance

* Re-create fixtures

* And more tolerance
2021-05-20 10:01:47 +03:00
Jukka Kurkela
44e62e77ca Improve linear tick generators collision estimation (#8983)
* Increase distance to min/max tick to 1/3 space

* Better estimation on linear tick collision

* Lint fix

* Remove unused change
2021-04-28 16:41:57 -04:00
Jukka Kurkela
3e319f79ab Scale: draw border on separate layer after grid (#8936) 2021-04-18 07:38:46 -04:00
Evert Timberg
af7965fc31 Cartesian scale tick backdrop (#8931) 2021-04-18 12:49:22 +03:00
Jukka Kurkela
853f094937 Scale: Make sure grace is applied only once (#8913)
* Scale: Make sure grace is applied only once
* Add description to fixture
2021-04-17 07:31:15 -04:00
Jukka Kurkela
8e535c574c Skip ticks by callback value as documented (#8914) 2021-04-17 07:28:33 -04:00
Jukka Kurkela
7fab66ccd1 Support mirror option on x-axis (#8867) 2021-04-10 09:01:38 -04:00
stockiNail
7ae1064ab9 Apply scale context to ticks scriptable options instead of chart context (#8839)
* Fixes #8835

* context as argument because protected

* fixes test case on formatters

* reverts previous commits and sets the scale context in the scale init

* changes documentation about linear ticks, adding scriptable Yes
2021-04-07 16:45:39 -04:00
Jukka Kurkela
e1ddaa8992 Dissociate border options from grid options (#8823)
* Dissociate border options from grid options
* Update docs
2021-04-04 14:19:07 -04:00
Jukka Kurkela
1a5a15265a Revert "Scale: draw offset grid for labels before autoSkip (#8748)" (#8752)
This reverts commit cdba66ccef.
2021-03-30 08:00:19 -04:00
Jukka Kurkela
cdba66ccef Scale: draw offset grid for labels before autoSkip (#8748)
* Scale: draw offset grid for labels before autoSkip
* fix tests
2021-03-29 16:53:47 -04:00
Jukka Kurkela
9499a1e1ef Move scale defaults to separate file (#8692) 2021-03-21 18:13:50 -04:00
Jukka Kurkela
bd9bc69c0c Move autoSkip related functions to separate file (#8691) 2021-03-21 17:07:28 -04:00
Jukka Kurkela
416062bf68 Update tick positioning (#8657)
* Update tick positioning
* Update tests
2021-03-17 18:22:21 -04:00
Jukka Kurkela
420aa027b3 Exclude base-line from bar size (#8648)
* Exclude base-line from bar size

* lint

* add to types
2021-03-16 08:49:19 -04:00
Jukka Kurkela
0a579b6813 Add alignToPixles option for scales (#8649) 2021-03-16 08:41:51 -04:00
Jukka Kurkela
99596b0434 Reduce duplication in drawGrid (#8647) 2021-03-16 08:07:17 -04:00
Jukka Kurkela
a026b60653 Change default autoSkipPadding to 3 (#8629) 2021-03-13 13:30:19 -05:00
Evert Timberg
6ac89cbb25 Rename scale gridLines options to be clearer (#8628)
* Rename `options.gridLines` to `options.grid`

* Rename `offsetGridLines` to `offset`
2021-03-13 19:49:09 +02:00
Jukka Kurkela
9799dbd5a0 Scale: autoSkip before fit (#8627)
Scale: autoSkip now occurs before fit in the update process
2021-03-13 11:36:12 -05:00
Jukka Kurkela
bedc3f1575 Fix autoSkip (#8619)
* Fix autoSkip
* Add tests
2021-03-11 16:25:16 -05:00
Jukka Kurkela
7c8ee6e77f Add rollup-plugin-size and shave couple of bytes (#8618)
* Add rollup-plugin-size

* Shave couple of bytes
2021-03-11 16:20:54 -05:00
Jukka Kurkela
d48a62a4e9 Add backgroundColor for scales (#8606)
* Add backgroundColor for scales
* Loosen the threshold
2021-03-10 08:18:10 -05:00
Jukka Kurkela
f7ebedc367 Scale: refactor drawTitle, add tests (#8598)
* Scale: refactor drawTitle, add tests
* CC, lint
* update
2021-03-09 08:35:43 -05:00
Jukka Kurkela
7ccf9e2d4d Add grace option for linear scale (#8581)
* Add `grace` option for linear scale

* cc
2021-03-06 17:18:49 -05:00
Evert Timberg
279b6ae1da Enable multi-line axis titles (#8579) 2021-03-06 10:18:32 -05:00
Evert Timberg
a23f1de6df Rename scaleLabel to title in scale options (#8576) 2021-03-05 23:22:55 -05:00
Jukka Kurkela
bc8385e6bb Fix layout refit logic (#8567)
* Fix layout refit logic

* CC

* Update fixture
2021-03-04 19:48:26 -05:00
Jukka Kurkela
5285735c0f Fix ticks.mirror (#8482) 2021-02-21 14:27:14 -05:00
Jacco van den Berg
9f071b0f23 Update index.esm.d.ts (#8472)
* Update index.esm.d.ts

tickValue is to my knowledge always a number or a string so this will make it so people wont have to parse it themselfs

* Update core.scale.js

Update typedef according to types update
2021-02-21 09:16:11 -05:00
Jukka Kurkela
5d5e48d01b Isolate properties / modes from animation options (#8332)
* Isolate properties / modes from animation options
* tabs, something wrong with the linter
* Update misleading variable name
2021-02-20 09:02:22 -05:00
Jukka Kurkela
cfd9c98575 Option resolution with proxies (#8374)
* Option resolution with proxies

* Remove plugin fallback to root options/defaults

* Update core plugins, reduntant font fallbacks

* Add some notes
2021-02-15 14:42:32 -05:00
Jukka Kurkela
422d26d32a Optimize context object construction (#8413)
* perf: context construction
* avoid setPrototypeOf
2021-02-14 10:34:49 -05:00
Jukka Kurkela
ddfbcf777a Update eslint-config-chartjs to v0.3.0 (#8406) 2021-02-10 08:21:39 -05:00
LeeLenaleee
ae0c8dd457 align text inside chart for far-aligned labels passing test (#8359)
* align text inside chart for far-aligned labels

* added fix for failing test on suggestion of @kurkle

Co-authored-by: Marcel Samyn <marcel.samyn@lab900.com>
2021-01-31 15:19:40 -05:00
Jukka Kurkela
ad84d285d8 Rename LayoutItem.fullWidth to fullSize (#8358) 2021-01-31 13:44:44 -05:00
Evert Timberg
7415517c83 Cache data limits to ensure they are only computed once per update (#8234)
* Cache data limits to ensure they are only computed once per updaet
* Replace `invalidateCaches` on scales with `beforeLayout`
2020-12-26 14:37:23 -05:00
Evert Timberg
988b3c5d2b Create standardized text render method (#8227)
* Create standardized text render method
* Document renderText options and enable configurable decoration width
* Add tests for font rendering
* Split color definition to it's own file
* renderText supports setting styles
* Mock context needs to track textBaseline
* renderText can set textAlign and textBaseline
* renderText does not mutate the context + translate/rotate
* Explicitly set the text decoration style
* Move useStroke logic into renderText
* Cartesian scale: Update computeLabelItems to avoid duplicate allocations
2020-12-26 11:23:02 -05:00
Evert Timberg
1b0ed0c8c5 Scriptable tick colours (#8222) 2020-12-22 12:11:00 -05:00
Evert Timberg
da0535e1ff Horizontal axis with center position should display labels (#8221)
* Horizontal axes with center positions should have labels
* Linting
* Test updates
* Increase the tolerance for one test
2020-12-22 11:33:53 -05:00
Evert Timberg
55a26e69ba Add options to configure tick styling independent of grid lines (#8215)
* Enable axis tick styling independent of grid lines
* Change tickMarkLength to tickLength for consistency with new options
* Add new scale options to TS definitions
2020-12-22 11:27:57 -05:00
Jukka Kurkela
b2d5a5fa97 Update defaults and types for tick stroke (#8195) 2020-12-18 12:36:18 -05:00
Jukka Kurkela
c1aeba1e67 Add new scale hooks for plugins (#8112)
* Add new scale hooks for plugins

* Add notes

* cc

* cancelability
2020-12-02 06:51:47 +02:00