Commit Graph

2496 Commits

Author SHA1 Message Date
Evert Timberg
26c44cf7ab
Treat negative values in doughnut charts as positive (#5165) 2018-01-21 12:12:33 -05:00
Loïc Bourgois
6d58a6a8a8 Add tests related to showLines for controller.scatter (#5150) 2018-01-16 10:29:49 +01:00
Loïc Bourgois
e585c7505f Log gulp error to Chart.js (#5143)
* Log errors and skip for buildTask

* Write gulp error to Chart.js
+ Add intentional error to core to check if travis fails

* Remove unused require

* Remove error + Proper require fs

* Fix newline

* Refactor

* Put back browser errors

* Use options

* Fix intentional error

* Use yargs + Refactor

* remove space

* Fefactor

* Use booleans
2018-01-13 12:17:38 -05:00
Ben McCann
37ec8384d7 Format the label in the time scale tooltip (#5095) 2018-01-13 10:39:16 -05:00
Simon Brunel
2d7f0a46c3 Fix updating plugin options (#5144)
Cached plugin descriptors hold a reference on the plugin options, which break if the plugin options object is replaced. That case happens when the user updates the plugin options with a new object, but also since the new config update logic (#4198) that now always clones the plugin options. The fix consists in explicitly invalidating that cache before updating the chart.
2018-01-13 08:23:50 -05:00
Simon Brunel
2f5a3e171b Ignore package-lock.json (#5138) 2018-01-11 06:51:03 -05:00
Simon Brunel
1d5619d6d4
Fix GitBook error with the shared ESLint config (#5133)
`gitbook-cli install` failed when trying to fetch eslint-config-chartjs because of the way it was installed (ie. using the GitHub repository URL). The shared config is now published on npmjs: https://www.npmjs.com/package/eslint-config-chartjs
2018-01-11 09:03:16 +01:00
Simon Brunel
6bea15e7cf
Rename Chart.layout to Chart.layouts (#5118)
Chart.layouts seems more consistent with other service names (Chart.plugins, Chart.scales, etc.) but also more inline with the service which handle many layout (one per charts).
2018-01-09 14:12:40 +01:00
Simon Brunel
fb3ea03440
Make Chart.plugins importable (#5114)
Explicitly deprecate (since 2.1.5) `Chart.Legend` and `Chart.Title`.
2018-01-08 11:48:59 +01:00
Simon Brunel
ce27fe5ea6
Make Chart.layout(Service) importable (#5113)
Rename (and deprecate) `Chart.layoutService` to `Chart.layout` and make it importable.
2018-01-07 23:38:26 +01:00
Simon Brunel
9ddb449ad1 Use the Chart.js shared ESLint config (#5112)
An ESLint shareable config has been created (from this repository) in the attempt to homogenize Chart.js hosted projects and plugins style. Rename `.eslintrc` files to `.eslintrc.yml` since the name has been deprecated.

Fix the CC badge (maintainability) and disable CodeClimate ESLint plugin because it doesn't support custom shareable config but also because it already executes relevant checks as part of the regular process.
2018-01-06 17:59:13 -05:00
Ben McCann
33c7d941f7 Add back Chart.Ticks.formatters (#5088) 2018-01-06 18:59:47 +01:00
Simon Brunel
fcd463354b
Update license year and copyright holders (#5053) 2017-12-31 15:17:22 +01:00
Cameron Childress
9874a754e0 Adding helpful note about legendCallback (#5094)
I didn't realize you had to call generateLegend() manually and a quick search tells me that lots of other people have run into this too.
2017-12-29 08:52:17 +01:00
jcopperfield
92d033beb2 Optimization: prevent double ticks array reverse for vertical logarithmic axis (#5076)
with ticks option 'reverse: true'.
2017-12-23 08:34:55 -05:00
Boyi C
ce1fc28b74 Improve point.xRange and point.yRange performance (#5062) 2017-12-18 20:24:02 +01:00
jcopperfield
b04ce949d1 Use time.unit option to create default min/max for empty chart (#5045) 2017-12-15 18:10:30 +01:00
jcopperfield
f9beedba40 Fix issue #5029 (#5041)
- infinite loop in generating time axis, due to insufficient bounds checking.
2017-12-14 10:03:07 -05:00
jcopperfield
f0bf3954fe Fix issues #4572 and #4703 (#4959)
- issue #4572: logarithmic type if all numbers are zero browser crashes "Out of memory"
 - issue #4703: [BUG] Browser unresponsive on bubble chart with logarithmic axes
2017-12-12 18:43:51 -05:00
jcopperfield
4e47c178e4 Fix tooltip animation when target changes while animating (#5005)
* Fix issue #4989
 - tooltip in 'index' mode doesn't animate smoothly.

* Change: different approach for smooth tooltip animation in 'index'
        mode, when target doesn't change.

* Fix: jslint error

* Fix: remove spyOn pivot from test

* Add: setAnimating-flag in transition used to set on tooltip.transition
     to keep track of tooltip animation.

* Decrease code complexity

* Revert transition and complexity changes
Add: use 'tooltip._start' as workaround check for tooltip animation status
2017-12-12 18:43:17 -05:00
jcopperfield
6f34b2224f Fix issue #4928: linear tick generator doesn't round values to needed precision. (#4943)
* Fix issue 4928
 - linear tick generator doesn't round values to needed precision.

* Improve: replace toPrecision() in toString() to improve readability.

* Fix: logarithmic tick generator doesn't round values to needed precision.

* Fix: rounding tick values didn't work for negative values.

* Add: Core ticks tests
2017-12-02 09:24:57 -05:00
Simon Brunel
15d1056b53
Implement equally sized bars (#4994)
When `barThickness: undefined|null` (default), we compute an optimal sample size based on the smallest tick interval reduced to prevent any bar to overlap (bar equally sized). Also added support for a special `barThickness: 'flex'` value (previous default) that globally arranges bars side by side to prevent any gap when percentage options are 1 (variable bar sizes).
2017-12-02 12:38:36 +01:00
JohnShaft
b835df02cd Add Angular2+ libraries for Chart.js in docs (#5006) 2017-12-01 18:56:49 +01:00
beiz23
9a7182ba36 Fix typos and broken links in the docs (#5010) 2017-11-30 14:41:32 +01:00
Xingan Wang
333f2eba99 Fix scale options update (#4198)
- allow options to be updated in-place or as a new object
- re-merge new options and rebuild scales & tooltips
- preserve reference to old scale if id/type not changed
- related tests and new sample also added.
- update document about options update
- update doc and example
2017-11-29 22:52:23 +01:00
jcopperfield
42d3d91f52 Fix issue #4441 - y-axis labels partially hidden due to restrictive initial fitting. (#4942)
* Fix issue 4441:
 - y-axis labels partially hidden due to restrictive initial fitting.

* Add regression test to linear scale

* Moved regression test from linear scale to core layout service
2017-11-25 08:28:57 -05:00
Jean-Philippe Sirois
e2dd4483c7 Add an Ember.js Integration in the Documentation (#4984) 2017-11-24 19:31:58 -05:00
Evert Timberg
8ce7a9146b
Fix line to time axis documentation in bar chart docs (#4979) 2017-11-22 18:07:36 -05:00
anders
6b824d9334 add check on overwriting canvas height/width (#4874)
* add check on overwriting canvas height/width

* unit test for this
2017-11-21 19:04:26 -05:00
jcopperfield
e080e782ab Fix bumpy line on smooth data set (#4944)
Linear scale getPixelForValue() method doesn't round the returned value anymore.
2017-11-14 13:56:45 +01:00
jcopperfield
447ca40a7f Correctly handle stacked groups when not adjacent (#4937)
Only the dataset index was used for indexing the stack
2017-11-14 10:33:36 +01:00
Kaido Hallik
683e86e549 Avoid tooltip truncation in x axis if there is enough space (#3998)
* In tooltip x align calculation take into account caretSize

Truncation up to caretSize pixels could happen if label text produced tooltip element with size width:
* left side tooltip: width < x and width > x - caretSize
* right side tooltip: width < chartWidth - x and width > chartWidth - x - caretSize
Default caretSize = 5, so with default configuration truncation up to 5 pixels could happen.

* avoid tooltip truncation if possible
use whole chart area for displaying tooltip

* in xAlign calculation take into account caretPadding

* add tests for tooltip truncation avoid logic

* use caretX instead of xCaret

* fix lint errors
2017-11-11 18:02:05 -05:00
jcopperfield
939756c260 Fix log scale when value is 0 (#4913) 2017-11-10 09:16:48 +01:00
Ben McCann
d415e617d8 Reset only when animating (#4923) 2017-11-07 18:26:37 -05:00
Martin Alex Philip Dawson
52790f6f23 Update extensions.md (#4930)
Removed trailing space from waterfall-plugin.
2017-11-07 18:25:11 -05:00
Jonathan Grimes
67479c22f9 Relax dependencies semver range (#4891)
Prevent duplicate version of moment.js (which is pretty large) when an app also depends on moment (with less strict semver range)
2017-11-07 19:12:33 +01:00
Martin Alex Philip Dawson
95d7d8c20d Add link to chartjs-plugin-waterfall (#4921) 2017-11-06 10:39:39 +01:00
Aspaldiko
34709826cd Fix incorrect samples titles (#4914) 2017-11-02 13:51:36 +01:00
andig
7f751c8d80 Suppress coveralls errors if run from fork (#4699) 2017-11-01 16:00:41 +01:00
Ben McCann
ffbdb48310 Upgrade dependencies (incl. ESLint 4) (#4738) 2017-11-01 16:00:10 +01:00
Ben McCann
8a6d58d2d9 Bump version to 2.7.1 (#4877) 2017-10-28 10:22:20 +02:00
Evert Timberg
13e9676625 Reset tooltip when calling Chart.update (#4840) 2017-10-28 10:20:34 +02:00
Simon Brunel
26c1936dee Move extend and inherits helpers in helpers.core.js (#4878)
Fix Rollup issue caused by early access of the `extend` and `inherits` helpers not yet part of the `helpers/index` import. Also added (basic) unit tests for whose methods.
2017-10-24 19:11:40 +02:00
Simon Brunel
c81a55fed1 Add jsDelivr as CDN install option (#4881) 2017-10-22 13:18:24 -04:00
Ben McCann
9f32f0775a Attempt to fix test flakiness (Firefox) (#4880)
These settings deal with browser disconnects. We had seen test flakiness from Firefox:
[Firefox 56.0.0 (Linux 0.0.0)]: Disconnected (1 times), because no message in 10000 ms
2017-10-22 17:32:39 +02:00
Evert Timberg
ee6432b4cb Update supported browser section (#4818) 2017-10-21 08:43:31 -04:00
Ben McCann
b64fd5db25 Respect min and max when building ticks (#4860)
Generate time scale ticks (`ticks.source: 'auto'`) based on the effective visualized range instead of the actual data range, meaning that the computed units and/or step size may change if the time options min and max are different from the data min and max.
2017-10-20 09:03:38 +02:00
minusf
11315fba2b minor doc fixes (#4851) 2017-10-16 18:45:54 -04:00
JewelsJLF
8ac0257f8d Add "beforeTooltipDraw" and "afterTooltipDraw" plugin hooks (#4793) 2017-10-14 23:29:35 +02:00
Florian Scholz
c83b03f668 Fixes #4772: added scope for tooltip position mode call and added docs (#4784)
* added scope for tooltip position mode call and added docs

* added test for positioner

* removed named func for lint

* resolved pull-request comments
2017-10-10 18:33:25 -04:00