-
Notifications
You must be signed in to change notification settings - Fork 16
/
Copy pathplugins.html
104 lines (104 loc) · 42.1 KB
/
plugins.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Plugins | Chart.js</title>
<meta name="generator" content="VuePress 1.8.2">
<link rel="icon" href="/docs/3.5.0/favicon.ico">
<meta name="description" content="Open source HTML5 Charts for your website">
<link rel="preload" href="/docs/3.5.0/assets/css/0.styles.bc51b73f.css" as="style"><link rel="preload" href="/docs/3.5.0/assets/js/app.59cb20f3.js" as="script"><link rel="preload" href="/docs/3.5.0/assets/js/2.413130e4.js" as="script"><link rel="preload" href="/docs/3.5.0/assets/js/4.1caa9627.js" as="script"><link rel="prefetch" href="/docs/3.5.0/assets/js/10.a355b908.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/100.e5cb1cb4.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/101.1c2b3c1c.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/102.059fbc45.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/103.64e29596.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/104.c17d03e3.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/105.0254d1a7.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/106.1dd93b6c.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/107.536f6a2c.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/108.928dac80.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/109.10787c8c.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/11.b1358a1c.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/110.3499a36b.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/111.01c67a93.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/112.09cb20b8.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/113.f6ff9417.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/114.28ce97ea.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/115.dabee46e.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/116.b82c1fae.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/117.11fb7663.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/118.92e0cf62.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/119.a8e1ce7e.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/12.72fa2414.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/120.0b3fa24a.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/121.00f3bfa8.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/122.01e22b0e.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/123.e3d66577.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/124.cf0b4ee6.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/125.5a5b3ada.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/126.3b2e185f.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/127.15eefc07.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/128.61164e45.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/129.01b130e1.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/13.ebb93875.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/130.b209fe7f.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/131.ffdb5bb9.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/132.23823ad8.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/133.9bc0e294.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/134.82730c9b.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/135.c9c80afe.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/136.3e5e4165.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/137.f32814fc.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/138.2eaebdc3.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/139.0fd5d069.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/14.27cb80b6.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/140.48e3cda3.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/141.f5cc98cd.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/142.aca7ca4a.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/143.5b864728.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/144.9df4d6c8.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/145.8a1776fd.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/146.9edf461a.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/147.ad0570fb.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/148.32201e9a.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/149.f30a33e6.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/15.b9688b2d.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/150.021cd7a0.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/151.854a0d67.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/152.c2ec3994.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/153.9c9b99ee.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/154.0d8cd676.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/155.4c762fb2.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/156.39e36c25.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/157.456a4fcb.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/158.e3faf752.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/159.37fb9b11.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/16.cda6751f.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/160.90cd0fe0.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/161.5f91782b.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/162.ad2479e2.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/163.36d6394b.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/164.42a79c1f.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/165.45f86607.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/166.32756412.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/167.3f14acc7.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/168.65674006.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/169.e0a25137.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/17.78312632.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/170.75a9c877.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/171.187f1f6d.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/172.e0e33a65.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/173.4751bc1c.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/174.a40d9a17.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/175.654247ab.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/176.72432c48.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/177.0d2cd1b5.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/178.f5fc39c9.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/179.9c39c3a8.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/18.63babddc.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/180.f3fd11c7.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/181.08259b6b.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/182.4ef58173.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/183.dacadf95.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/184.fc296fdf.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/185.461ae516.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/186.43ec9676.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/187.e192c538.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/188.623c07b3.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/189.451adf6e.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/19.8e956441.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/190.00f0c825.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/191.6c2ceec5.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/192.07b7481f.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/193.beb7ac0a.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/194.ea0d0cc1.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/195.6f9e42f7.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/196.436b1b49.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/197.aad9e93c.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/198.97128af3.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/199.d8dd2c1f.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/20.996e100c.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/200.c69bf0b5.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/201.d915dbab.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/202.6b039791.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/203.a341ade1.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/204.eca9a404.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/205.ebe07903.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/206.762955e7.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/207.e4d85dfd.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/208.e895192b.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/209.b0885a32.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/21.ac46cf32.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/210.adf23059.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/211.5588473a.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/212.bf4629a7.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/213.ad1ca25c.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/214.a5fe39c5.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/215.511aaa17.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/216.61ec2674.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/217.ba116e51.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/218.822a8cba.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/219.fc3a8668.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/22.b73513bf.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/220.0ecf9928.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/221.70e2d53b.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/222.ae1b3f30.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/223.3a4e01a3.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/224.6ffe91c8.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/225.03717896.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/226.a7401e20.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/227.57fb74d8.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/228.f6598467.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/229.99cb5673.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/23.2974417a.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/230.a6864f81.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/231.82b4fcc4.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/232.60505c4f.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/233.66be9100.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/234.67d740dd.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/235.ef3c80fb.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/236.8b8b4637.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/237.f0c1359c.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/238.272e6e33.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/239.14bca625.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/24.fbc24092.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/240.7fd9a2d2.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/241.348841ce.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/242.f2da77c2.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/243.d1fd2e57.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/244.65aa69dd.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/245.fa5b9ce7.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/246.f417d283.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/247.8acd1f08.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/248.e45bbc92.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/25.3cbb9027.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/26.f4414065.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/27.dd77a226.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/28.9d4b0496.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/29.7da2376d.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/3.e2fd7cce.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/30.40dddf30.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/31.58f22d78.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/32.724cf098.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/33.1ee999ab.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/34.530faec3.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/35.07f17e06.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/36.ac976897.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/37.27eecc1b.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/38.dca6b407.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/39.f3efe8f8.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/40.75d4aee1.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/41.2f9d95a0.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/42.ca370c5c.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/43.50421383.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/44.ae8cb9d3.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/45.54600b3e.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/46.fa2d05f1.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/47.019eb528.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/48.174e02ad.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/49.ee78d5ba.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/5.af43cbd6.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/50.4fe3fb6b.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/51.25e54576.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/52.02ac4ee8.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/53.027fb7ce.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/54.46f765d5.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/55.3805d7c3.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/56.48ad6df3.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/57.06801b9c.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/58.776d6e68.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/59.262bc10b.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/6.3a712537.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/60.39d43bee.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/61.ffa5d333.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/62.bcd9390c.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/63.650157d4.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/64.51eda27a.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/65.53b17988.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/66.6c73f458.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/67.03e743a7.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/68.91df8b39.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/69.516c5c76.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/7.5ce46ca3.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/70.e8fa2131.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/71.7b79c28d.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/72.f2d41bb0.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/73.f6af820a.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/74.0d37dd45.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/75.da6e0631.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/76.6c95b7ef.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/77.db8c4ac7.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/78.7632b94e.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/79.5c4609b9.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/8.eabe9f87.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/80.03320c14.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/81.275f4f00.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/82.c26a026c.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/83.fe047ff7.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/84.919c0afb.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/85.5fb3e609.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/86.d3498c0f.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/87.eda2145e.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/88.b1d9d7ea.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/89.0e8bf7d7.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/9.fb277a1e.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/90.def95f55.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/91.0c4e6452.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/92.acdee0be.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/93.1e1a4d6e.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/94.ed9ef963.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/95.3d3d47ad.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/96.14d4148d.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/97.c3e965ad.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/98.62809f55.js"><link rel="prefetch" href="/docs/3.5.0/assets/js/99.cae59d05.js">
<link rel="stylesheet" href="/docs/3.5.0/assets/css/0.styles.bc51b73f.css">
</head>
<body>
<div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/docs/3.5.0/" class="home-link router-link-active"><img src="/docs/3.5.0/favicon.ico" alt="Chart.js" class="logo"> <span class="site-name can-hide">Chart.js</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/docs/3.5.0/" class="nav-link">
Home
</a></div><div class="nav-item"><a href="/docs/3.5.0/api/" class="nav-link">
API
</a></div><div class="nav-item"><a href="/docs/3.5.0/samples/" class="nav-link">
Samples
</a></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="Community Menu" class="dropdown-title"><span class="title">Ecosystem</span> <span class="arrow down"></span></button> <button type="button" aria-label="Community Menu" class="mobile-dropdown-title"><span class="title">Ecosystem</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="https://github.com/chartjs/awesome" target="_blank" rel="noopener noreferrer" class="nav-link external">
Awesome
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://chartjs-slack.herokuapp.com/" target="_blank" rel="noopener noreferrer" class="nav-link external">
Slack
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://stackoverflow.com/questions/tagged/chart.js" target="_blank" rel="noopener noreferrer" class="nav-link external">
Stack Overflow
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li></ul></div></div> <a href="https://github.com/chartjs/Chart.js" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/docs/3.5.0/" class="nav-link">
Home
</a></div><div class="nav-item"><a href="/docs/3.5.0/api/" class="nav-link">
API
</a></div><div class="nav-item"><a href="/docs/3.5.0/samples/" class="nav-link">
Samples
</a></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="Community Menu" class="dropdown-title"><span class="title">Ecosystem</span> <span class="arrow down"></span></button> <button type="button" aria-label="Community Menu" class="mobile-dropdown-title"><span class="title">Ecosystem</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="https://github.com/chartjs/awesome" target="_blank" rel="noopener noreferrer" class="nav-link external">
Awesome
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://chartjs-slack.herokuapp.com/" target="_blank" rel="noopener noreferrer" class="nav-link external">
Slack
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li><li class="dropdown-item"><!----> <a href="https://stackoverflow.com/questions/tagged/chart.js" target="_blank" rel="noopener noreferrer" class="nav-link external">
Stack Overflow
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></li></ul></div></div> <a href="https://github.com/chartjs/Chart.js" target="_blank" rel="noopener noreferrer" class="repo-link">
GitHub
<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></nav> <ul class="sidebar-links"><li><a href="/docs/3.5.0/" aria-current="page" class="sidebar-link">Chart.js</a></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading"><span>Getting Started</span> <span class="arrow right"></span></p> <!----></section></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading"><span>General</span> <span class="arrow right"></span></p> <!----></section></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading"><span>Configuration</span> <span class="arrow right"></span></p> <!----></section></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading"><span>Chart Types</span> <span class="arrow right"></span></p> <!----></section></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading"><span>Axes</span> <span class="arrow right"></span></p> <!----></section></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading open"><span>Developers</span> <span class="arrow down"></span></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/docs/3.5.0/developers/" aria-current="page" class="sidebar-link">Developers</a></li><li><a href="/docs/3.5.0/developers/api.html" class="sidebar-link">API</a></li><li><a href="/docs/3.5.0/api/" class="sidebar-link">TypeDoc</a></li><li><a href="/docs/3.5.0/developers/updates.html" class="sidebar-link">Updating Charts</a></li><li><a href="/docs/3.5.0/developers/plugins.html" aria-current="page" class="active sidebar-link">Plugins</a></li><li><a href="/docs/3.5.0/developers/charts.html" class="sidebar-link">New Charts</a></li><li><a href="/docs/3.5.0/developers/axes.html" class="sidebar-link">New Axes</a></li><li><a href="/docs/3.5.0/developers/contributing.html" class="sidebar-link">Contributing</a></li><li><a href="/docs/3.5.0/developers/publishing.html" class="sidebar-link">Publishing an extension</a></li></ul></section></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="plugins"><a href="#plugins" class="header-anchor">#</a> Plugins</h1> <p>Plugins are the most efficient way to customize or change the default behavior of a chart. They have been introduced at <a href="https://github.com/chartjs/Chart.js/releases/tag/2.1.0" target="_blank" rel="noopener noreferrer">version 2.1.0<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> (global plugins only) and extended at <a href="https://github.com/chartjs/Chart.js/releases/tag/v2.5.0" target="_blank" rel="noopener noreferrer">version 2.5.0<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> (per chart plugins and options).</p> <h2 id="using-plugins"><a href="#using-plugins" class="header-anchor">#</a> Using plugins</h2> <p>Plugins can be shared between chart instances:</p> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> plugin <span class="token operator">=</span> <span class="token punctuation">{</span> <span class="token comment">/* plugin implementation */</span> <span class="token punctuation">}</span><span class="token punctuation">;</span>
<span class="token comment">// chart1 and chart2 use "plugin"</span>
<span class="token keyword">var</span> chart1 <span class="token operator">=</span> <span class="token keyword">new</span> <span class="token class-name">Chart</span><span class="token punctuation">(</span>ctx<span class="token punctuation">,</span> <span class="token punctuation">{</span>
plugins<span class="token operator">:</span> <span class="token punctuation">[</span>plugin<span class="token punctuation">]</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token keyword">var</span> chart2 <span class="token operator">=</span> <span class="token keyword">new</span> <span class="token class-name">Chart</span><span class="token punctuation">(</span>ctx<span class="token punctuation">,</span> <span class="token punctuation">{</span>
plugins<span class="token operator">:</span> <span class="token punctuation">[</span>plugin<span class="token punctuation">]</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token comment">// chart3 doesn't use "plugin"</span>
<span class="token keyword">var</span> chart3 <span class="token operator">=</span> <span class="token keyword">new</span> <span class="token class-name">Chart</span><span class="token punctuation">(</span>ctx<span class="token punctuation">,</span> <span class="token punctuation">{</span><span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>Plugins can also be defined directly in the chart <code>plugins</code> config (a.k.a. <em>inline plugins</em>):</p> <div class="custom-block warning"><p class="custom-block-title">WARNING</p> <p><em>inline</em> plugins are not registered. Some plugins require registering, i.e. can't be used <em>inline</em>.</p></div> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> chart <span class="token operator">=</span> <span class="token keyword">new</span> <span class="token class-name">Chart</span><span class="token punctuation">(</span>ctx<span class="token punctuation">,</span> <span class="token punctuation">{</span>
plugins<span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">{</span>
<span class="token function-variable function">beforeInit</span><span class="token operator">:</span> <span class="token keyword">function</span><span class="token punctuation">(</span><span class="token parameter">chart<span class="token punctuation">,</span> args<span class="token punctuation">,</span> options</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
<span class="token comment">//..</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">]</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>However, this approach is not ideal when the customization needs to apply to many charts.</p> <h2 id="global-plugins"><a href="#global-plugins" class="header-anchor">#</a> Global plugins</h2> <p>Plugins can be registered globally to be applied on all charts (a.k.a. <em>global plugins</em>):</p> <div class="language-javascript extra-class"><pre class="language-javascript"><code>Chart<span class="token punctuation">.</span><span class="token function">register</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
<span class="token comment">// plugin implementation</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><div class="custom-block warning"><p class="custom-block-title">WARNING</p> <p><em>inline</em> plugins can't be registered globally.</p></div> <h2 id="configuration"><a href="#configuration" class="header-anchor">#</a> Configuration</h2> <h3 id="plugin-id"><a href="#plugin-id" class="header-anchor">#</a> Plugin ID</h3> <p>Plugins must define a unique id in order to be configurable.</p> <p>This id should follow the <a href="https://docs.npmjs.com/files/package.json#name" target="_blank" rel="noopener noreferrer">npm package name convention<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a>:</p> <ul><li>can't start with a dot or an underscore</li> <li>can't contain any non-URL-safe characters</li> <li>can't contain uppercase letters</li> <li>should be something short, but also reasonably descriptive</li></ul> <p>If a plugin is intended to be released publicly, you may want to check the <a href="https://www.npmjs.com/search?q=chartjs-plugin-" target="_blank" rel="noopener noreferrer">registry<span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a> to see if there's something by that name already. Note that in this case, the package name should be prefixed by <code>chartjs-plugin-</code> to appear in Chart.js plugin registry.</p> <h3 id="plugin-options"><a href="#plugin-options" class="header-anchor">#</a> Plugin options</h3> <p>Plugin options are located under the <code>options.plugins</code> config and are scoped by the plugin ID: <code>options.plugins.{plugin-id}</code>.</p> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> chart <span class="token operator">=</span> <span class="token keyword">new</span> <span class="token class-name">Chart</span><span class="token punctuation">(</span>ctx<span class="token punctuation">,</span> <span class="token punctuation">{</span>
options<span class="token operator">:</span> <span class="token punctuation">{</span>
foo<span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token comment">// chart 'foo' option</span>
plugins<span class="token operator">:</span> <span class="token punctuation">{</span>
p1<span class="token operator">:</span> <span class="token punctuation">{</span>
foo<span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token comment">// p1 plugin 'foo' option</span>
bar<span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">,</span>
p2<span class="token operator">:</span> <span class="token punctuation">{</span>
foo<span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token comment">// p2 plugin 'foo' option</span>
bla<span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token operator">...</span> <span class="token punctuation">}</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><h4 id="disable-plugins"><a href="#disable-plugins" class="header-anchor">#</a> Disable plugins</h4> <p>To disable a global plugin for a specific chart instance, the plugin options must be set to <code>false</code>:</p> <div class="language-javascript extra-class"><pre class="language-javascript"><code>Chart<span class="token punctuation">.</span><span class="token function">register</span><span class="token punctuation">(</span><span class="token punctuation">{</span>
id<span class="token operator">:</span> <span class="token string">'p1'</span><span class="token punctuation">,</span>
<span class="token comment">// ...</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
<span class="token keyword">var</span> chart <span class="token operator">=</span> <span class="token keyword">new</span> <span class="token class-name">Chart</span><span class="token punctuation">(</span>ctx<span class="token punctuation">,</span> <span class="token punctuation">{</span>
options<span class="token operator">:</span> <span class="token punctuation">{</span>
plugins<span class="token operator">:</span> <span class="token punctuation">{</span>
p1<span class="token operator">:</span> <span class="token boolean">false</span> <span class="token comment">// disable plugin 'p1' for this instance</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><p>To disable all plugins for a specific chart instance, set <code>options.plugins</code> to <code>false</code>:</p> <div class="language-javascript extra-class"><pre class="language-javascript"><code><span class="token keyword">var</span> chart <span class="token operator">=</span> <span class="token keyword">new</span> <span class="token class-name">Chart</span><span class="token punctuation">(</span>ctx<span class="token punctuation">,</span> <span class="token punctuation">{</span>
options<span class="token operator">:</span> <span class="token punctuation">{</span>
plugins<span class="token operator">:</span> <span class="token boolean">false</span> <span class="token comment">// all plugins are disabled for this instance</span>
<span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span>
</code></pre></div><h2 id="plugin-core-api"><a href="#plugin-core-api" class="header-anchor">#</a> Plugin Core API</h2> <p>Read more about the <a href="../api/interfaces/plugin">existing plugin extension hooks</a>.</p> <h3 id="chart-initialization"><a href="#chart-initialization" class="header-anchor">#</a> Chart Initialization</h3> <p>Plugins are notified during the initialization process. These hooks can be used to setup data needed for the plugin to operate.</p> <p><img src="/docs/3.5.0/assets/img/init_flowchart.6fe3a3b2.png" alt="Chart.js init flowchart"></p> <h3 id="chart-update"><a href="#chart-update" class="header-anchor">#</a> Chart Update</h3> <p>Plugins are notified during throughout the update process.</p> <p><img src="/docs/3.5.0/assets/img/update_flowchart.0556691d.png" alt="Chart.js update flowchart"></p> <h3 id="rendering"><a href="#rendering" class="header-anchor">#</a> Rendering</h3> <p>Plugins can interact with the chart throughout the render process. The rendering process is documented in the flowchart below. Each of the green processes is a plugin notification. The red lines indicate how cancelling part of the render process can occur when a plugin returns <code>false</code> from a hook. Not all hooks are cancelable, however, in general most <code>before*</code> hooks can be cancelled.</p> <p><img src="/docs/3.5.0/assets/img/render_flowchart.64fdd67d.png" alt="Chart.js render pipeline flowchart"></p> <h3 id="event-handling"><a href="#event-handling" class="header-anchor">#</a> Event Handling</h3> <p>Plugins can interact with the chart during the event handling process. The event handling flow is documented in the flowchart below. Each of the green processes is a plugin notification. If a plugin makes changes that require a re-render, the plugin can set <code>args.changed</code> to <code>true</code> to indicate that a render is needed. The built-in tooltip plugin uses this method to indicate when the tooltip has changed.</p> <p><img src="/docs/3.5.0/assets/img/event_flowchart.83015c7a.png" alt="Chart.js event handling flowchart"></p></div> <footer class="page-edit"><!----> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">7/25/2021, 11:56:33 AM</span></div></footer> <div class="page-nav"><p class="inner"><span class="prev">
←
<a href="/docs/3.5.0/developers/updates.html" class="prev">
Updating Charts
</a></span> <span class="next"><a href="/docs/3.5.0/developers/charts.html">
New Charts
</a>
→
</span></p></div> </main></div><div class="global-ui"></div></div>
<script src="/docs/3.5.0/assets/js/app.59cb20f3.js" defer></script><script src="/docs/3.5.0/assets/js/2.413130e4.js" defer></script><script src="/docs/3.5.0/assets/js/4.1caa9627.js" defer></script>
</body>
</html>