├── .gitignore
├── .npmignore
├── .prettierrc.js
├── .travis.yml
├── CHANGELOG.md
├── README-vue3.md
├── README.md
├── babel.config.js
├── examples-vue3
├── .gitignore
├── babel.config.js
├── package-lock.json
├── package.json
├── public
│ ├── favicon.ico
│ ├── index.html
│ ├── jsc-vue-logo.svg
│ └── resources
│ │ ├── access-to-drinking-water-by-country.csv
│ │ ├── laborForceUs.csv
│ │ └── stepData17-18.csv
├── src
│ ├── App.vue
│ ├── assets
│ │ └── logo.png
│ ├── components
│ │ ├── calendarHeatmap.vue
│ │ ├── chartDash.vue
│ │ ├── chartDataGrid.vue
│ │ ├── circularColorBar.vue
│ │ ├── circularGauge.vue
│ │ ├── dataGrid.vue
│ │ ├── interactiveLine.vue
│ │ ├── liveData.vue
│ │ ├── mapChoropleth.vue
│ │ ├── masterDetail.vue
│ │ ├── methodUpdate.vue
│ │ ├── microchartFast.vue
│ │ └── simpleLine.vue
│ ├── main.ts
│ └── shims-vue.d.ts
├── tsconfig.json
└── vue.config.js
├── examples
├── .gitignore
├── babel.config.js
├── package-lock.json
├── package.json
├── public
│ ├── favicon.ico
│ ├── index.html
│ ├── jsc-vue-logo.svg
│ └── resources
│ │ ├── access-to-drinking-water-by-country.csv
│ │ ├── laborForceUs.csv
│ │ └── stepData17-18.csv
├── src
│ ├── App.vue
│ ├── assets
│ │ └── logo.png
│ ├── components
│ │ ├── calendarHeatmap.vue
│ │ ├── chartDash.vue
│ │ ├── chartDataGrid.vue
│ │ ├── circularColorBar.vue
│ │ ├── circularGauge.vue
│ │ ├── dataGrid.vue
│ │ ├── interactiveLine.vue
│ │ ├── liveData.vue
│ │ ├── mapChoropleth.vue
│ │ ├── masterDetail.vue
│ │ ├── methodUpdate.vue
│ │ ├── microchartFast.vue
│ │ └── simpleLine.vue
│ └── main.js
└── vue.config.js
├── package-lock.json
├── package.json
├── scripts
└── postinstall.js
├── src
├── assets
│ └── logo.png
├── components
│ ├── jscgrid.vue
│ ├── jscharting.vue
│ └── jsclabel.vue
└── main.js
├── tests
├── jscgrid.test.js
├── jscharting.test.js
└── jsclabel.test.js
├── types
└── jscharting-vue.d.ts
└── vue.config.js
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /dist
4 | /storage
5 |
6 | # local env files
7 | .env.local
8 | .env.*.local
9 |
10 | # Log files
11 | npm-debug.log*
12 | yarn-debug.log*
13 | yarn-error.log*
14 |
15 | # Editor directories and files
16 | .idea
17 | .vscode
18 | *.suo
19 | *.ntvs*
20 | *.njsproj
21 | *.sln
22 | *.sw?
23 |
--------------------------------------------------------------------------------
/.npmignore:
--------------------------------------------------------------------------------
1 | /node_modules/**
2 | /examples/**
3 | /examples-vue3/**
4 | /tests/
5 | /.idea/*
6 | /tests/**
7 | /storage/**
--------------------------------------------------------------------------------
/.prettierrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | trailingComma: "none",
3 | useTabs: true,
4 | semi: true,
5 | singleQuote: true
6 | };
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js: node
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 | ## [2.4.0] - 2023-3-1
4 |
5 | - Update JSCharting version to [v3.4.0](https://github.com/jscharting/jscharting-dist/blob/master/CHANGELOG.md#340---2023-2-14)
6 |
7 | ## [2.3.1] - 2022-4-28
8 |
9 | - Update JSCharting version to [v3.3.1](https://github.com/jscharting/jscharting-dist/blob/master/CHANGELOG.md#331---2022-4-28)
10 |
11 | ## [2.3.0] - 2022-4-6
12 |
13 | - Update JSCharting version to v3.3.0
14 |
15 | ## [2.2.0] - 2021-11-24
16 |
17 | - Update JSCharting version to v3.2.0
18 |
19 | ## [2.1.0] - 2021-08-27
20 |
21 | - Update JSCharting version to v3.1.0
22 |
23 | ## [2.0.0-beta.2] - 2021-05-07
24 |
25 | ### Changed
26 | - Adjusted grid and label props definitions
27 | - Sync definitions in jscharting-vue.d.ts
28 | - Tweak readme
29 |
30 | ### Added
31 | - Tests
32 |
33 | ## [2.0.0-beta] - 2021-04-13
34 |
35 | ### Breaking Change
36 | - The `callback` prop was removed and is now the `@rendered` event
37 |
38 | ### Changed
39 | - Revised Readme.md documentation
40 | - npm `start` script renamed to `serve` in examples
41 | - Update JSCharting version to v3.0.3
42 | - Revised all examples
43 |
44 | ### Added
45 | - Component Typings
46 | - @rendered event
47 | - Vue3 Support
48 | - Vue3 Examples
49 | - Vue3 Documentation
50 | - New Examples
51 |
52 | ## [1.2.2] - 2021-01-27
53 |
54 | ### Changed
55 | - Update JSCharting version to v3.0.2
56 |
57 | ## [1.2.1] - 2020-10-27
58 |
59 | ### Changed
60 | - Update JSCharting version to v3.0.1
61 |
62 | ## [1.2.0] - 2020-10-26
63 |
64 | ### Changed
65 | - Test against built files
66 | - Update JSCharting version to v3.0.0
67 |
68 | ## [1.1.0] - 2020-02-19
69 |
70 | ### Added
71 | - Initial plugin release.
72 |
73 |
74 |
--------------------------------------------------------------------------------
/README-vue3.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | JavaScript data visualization for Vue.js
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 | **JSCharting** is a JavaScript data visualization library offering seamless usage with Vue across all devices and platforms. Every JSCharting license includes a full suite of 150+ chart types including standards such as pie charts, line charts, donut and bar charts. In addition, advanced chart types including Gantt charts, JavaScript Org Charts, interactive charts for stock and finance, seamless grid and calendar charts, JavaScript maps, sparklines, and micro charts all for no additional charge. JSCharting has all the features you need and many you don't yet know you want.
20 |
21 | Example Charts:
22 | [Chart Types](https://jscharting.com/examples/chart-types/)
23 | | [Feature Examples](https://jscharting.com/examples/chart-features/)
24 |
25 | # Official JSCharting plugin for Vue.js
26 | A Vue2 and Vue3 wrapper to use [JSCharting](https://jscharting.com/) charting library as a Vue component.
27 |
28 | ### This documentation is for Vue3. For Vue2, [click here](README.md).
29 |
30 | ## Table of Contents
31 |
32 | 1. [Install](#install)
33 | 1. [Run Examples](#run-examples)
34 | 2. [Usage](#usage)
35 | 1. [Simple Example](#simple-example)
36 | 2. [JSCharting Component Options](#jscharting-component-options)
37 | 3. [Updating Charts](#updating-charts)
38 | 3. [Chart resources](#chart-resources)
39 | 4. [Getting a chart reference](#getting-a-chart-reference)
40 | 5. [JSCLabel Component](#jsclabel-component)
41 | 6. [JSCGrid Component](#jscgrid-component)
42 |
43 |
44 |
45 | ### Install
46 |
47 | Install the jscharting-vue chart component.
48 |
49 | ```console
50 | npm i -D jscharting-vue
51 | ```
52 |
53 | or
54 |
55 | ```console
56 | yarn add jscharting-vue
57 | ```
58 |
59 |
60 | #### Run Examples
61 | Clone the [Github repo](https://github.com/jscharting/jscharting-vue) locally. Example charts are located in the `/examples-vue3` folder.
62 |
63 | To view the examples you can run the webpack dev server: localhost:3333
64 |
65 | ```console
66 | npm run serve-examples-vue3
67 | ```
68 |
69 | Or build the project manually.
70 |
71 | ```console
72 | npm run build-examples-vue3
73 | ```
74 |
75 |
76 | ### Usage
77 |
78 | #### Simple example
79 | This example shows how you can use the `JSCharting` component of the `jscharting-vue` module to make a column chart.
80 |
81 |
82 | ```html
83 |
84 |
85 |
86 |
87 |
113 | ```
114 |
115 | Notice that you can use `JSCChartConfig` type definitions for chart configuration properties.
116 | ```typescript
117 | import { JSCChartConfig } from 'jscharting'; // -> JSCChartConfig
118 | // OR
119 | import JSCharting, { JSC } from 'jscharting-vue'; // -> JSC.JSCChartConfig
120 | ```
121 |
122 |
123 | #### JSCharting Component Options
124 | These customizable options are available with the `JSCharting` component.
125 |
126 | | Parameter | Type | Description |
127 | | --------- | :----: | ----------- |
128 | | `:options` | object | JSCharting chart configuration object. Please refer to the [API documentation](https://jscharting.com/documentation/#node=Home.API.json.Chart). |
129 | | `:mutable` | boolean | (Optional) True by default. When set to `false`, a new instance of the chart is created when chart options change. Otherwise, updated options are passed to the existing chart instance `chart.options()` function.
130 | | `:ignoreStateUpdate` | boolean | (Optional) `false` by default. When `true`, the chart will ignore updates applied when reactive property is changed. This is useful when you want to update the chart directly. |
131 | | `@rendered` | event | (Optional) Event triggered when the chart is finished rendering. The first argument of the event handler is a reference to the created chart.|
132 |
133 |
134 | #### Updating charts
135 |
136 | There are a couple ways to update live charts.
137 |
138 | ##### Using reactive properties
139 |
140 | Updating reactive chart options properties affects the chart in two ways, depending on the option `mutable`.
141 | When the component option `mutable` is true, options are passed to the chart using chart.options().
142 | When `mutable` is false, changing options will reset the chart with a new instance.
143 |
144 | Charts with `mutable == true` option perform better and allow charts to animate changes. Only new options that are changing
145 | need to be passed to the chart. You can animate chart updates using this more.
146 |
147 | Using `mutable == false` is sometimes useful when a chart must be drastically modified. In this mode, all options should be
148 | available for a new chart instance to use.
149 |
150 | See [animating series and points](https://jscharting.com/tutorials/types/js-series-point-animation-chart/) for more
151 | information.
152 |
153 | ```html
154 |
155 |
156 |
157 | Update Chart Options Data
158 |
159 |
160 |
161 |
212 | ```
213 |
214 | ##### Updating chart directly
215 |
216 | JSCharting has a rich API for direct interaction with chart elements programmatically. This approach is more
217 | flexible and can update the chart more efficiently when performance is a priority. Charts can also
218 | be decoupled from `data` updates and managed independently.
219 |
220 | Set the `ignoreStateUpdate` option to true to prevent reactive chart properties from affecting the chart itself.
221 |
222 | See [getting a chart reference](#getting-a-chart-reference). Code to get the chart instance inside the `setup()` function
223 | will look something like this.
224 |
225 | ```js
226 | const chart = this.myChart.value?.instance as JSC.Chart;
227 | ```
228 |
229 | Once a `chart` instance reference is available, you can update chart options as needed with code such as:
230 |
231 | ```js
232 | chart.series().points(p => p.y > 50).options({ color: "red" });
233 | ```
234 |
235 | This line will make all points on a chart with y values greater than 50 red. Another example:
236 |
237 | ```js
238 | chart.series(0).points(0).options({ y: 100 });
239 | ```
240 |
241 | This example updates the "Purchases" series with new random point values.
242 |
243 |
244 | ```vue
245 |
246 |
247 |
248 | Update Chart Options Data
249 |
250 |
251 |
252 |
300 | ```
301 |
302 | ### Chart resources
303 | The JSCharting library includes resources (modules, mapping data, polyfills, icons library) that load automatically
304 | when they are needed. The `examples-vue3/` webpack [vue.config.js](examples-vue3/vue.config.js) configuration copies
305 | these resources to the `./dist/assets/jscharting` folder during built.
306 |
307 | The `examples-vue3/src/App.vue` file calls the `JSC.defaults()` function to set `baseUrl` option
308 | with this path globally in its constructor. All subsequent charts will be aware of the location of these resources.
309 |
310 | ```js
311 | import { JSC } from 'jscharting-vue';
312 | JSC.defaults({ baseUrl: 'dist/assets/jscharting', debug:true });
313 | ```
314 |
315 | **Note:** If the chart does not find the resources path, it will download them from a CDN.
316 | Setting `debug:true` in the `JSC.defaults()` function during development is recommended as it will
317 | alert you when the CDN fallback is used. It is recommended to use a local copy of resources in production.
318 |
319 | ### Getting a chart reference
320 |
321 | You can get a chart instance and use it within the `setup()` function using the `ref` attribute on
322 | the tag:
323 |
324 | ```vue
325 |
326 |
327 |
328 |
329 |
371 | ```
372 |
373 | You can also store it when the chart `@rendered` event is executed.
374 |
375 | ```vue
376 |
377 |
378 | Add Series
379 |
380 |
381 |
406 | ```
407 |
408 | ### JSCLabel Component
409 | This plugin also contains an implementation of the `JSCLabel` component for vue.
410 | You can use it to create very efficient micro chart SVG images in your vue projects.
411 | Here's a simple example.
412 |
413 | ```html
414 |
415 |
416 |
417 |
418 |
434 | ```
435 |
436 | The [Microchart Fast](examples-vue3/components/microchartFast.vue) example demonstrates updating a microchart using the
437 | JSCLabel component quickly.
438 |
439 | See the [microcharts tutorial](https://jscharting.com/tutorials/types/js-microcharts/) for configuration
440 | string syntax and more information.
441 |
442 | ### JSCGrid Component
443 | The `JSCGrid` data grid component is also included. You can use it to create data grids from JSON arrays.
444 | Here's a data grid example.
445 |
446 | ```html
447 |
448 |
449 |
450 |
451 |
479 | ```
480 |
481 | The available options for the data grid component are.
482 |
483 | | Parameter | Type | Description |
484 | | --------- | :----: | ----------- |
485 | | `:options` | object | JSCGrid configuration object. Please refer to the [API documentation](https://jscharting.com/documentation/#node=Home.API.json.Types.grid). |
486 | | `:mutable` | boolean | (Optional) When set to true, `grid.options()` is called with the updated props instead of recreating the grid instance.
487 | | `:className` | string | (Optional) Applies the class name to the grid container div element. It allows controlling grid size and layout with external CSS. |
488 | | `@rendered` | event | Triggered when the grid is finished rendering. The first argument of the event handler is a reference to the created grid.|
489 |
490 | Similar to the chart, you can import `JSCGridConfig` typings for grid options with
491 |
492 | ```typescript
493 | import { JSCGridConfig } from 'jscharting'; // -> JSCGridConfig
494 | // OR
495 | import JSCharting, { JSC } from 'jscharting-vue'; // -> JSC.JSCGridConfig
496 | ```
497 |
498 | See the [data grid tutorial](https://jscharting.com/tutorials/types/js-data-grid/) for configuration
499 | syntax and more information.
500 |
501 |
502 |
503 |
504 |
505 |
506 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | JavaScript data visualization for Vue.js
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 | **JSCharting** is a JavaScript data visualization library offering seamless usage with Vue across all devices and platforms. Every JSCharting license includes a full suite of 150+ chart types including standards such as pie charts, line charts, donut and bar charts. In addition, advanced chart types including Gantt charts, JavaScript Org Charts, interactive charts for stock and finance, seamless grid and calendar charts, JavaScript maps, sparklines, and micro charts all for no additional charge. JSCharting has all the features you need and many you don't yet know you want.
20 |
21 | Example Charts:
22 | [Chart Types](https://jscharting.com/examples/chart-types/)
23 | | [Feature Examples](https://jscharting.com/examples/chart-features/)
24 |
25 | # Official JSCharting plugin for Vue.js
26 | A Vue2 and Vue3 wrapper to use [JSCharting](https://jscharting.com/) charting library as a Vue component.
27 |
28 | ### This documentation is for Vue 2.x and earlier. For Vue3, [click here](README-vue3.md).
29 |
30 | ## Table of Contents
31 |
32 | 1. [Install](#install)
33 | 1. [Run Examples](#run-examples)
34 | 2. [Usage](#usage)
35 | 1. [Simple Example](#simple-example)
36 | 2. [JSCharting Component Options](#jscharting-component-options)
37 | 3. [Typescript Typings](#typescript-typings)
38 | 4. [Updating Charts](#updating-charts)
39 | 3. [Chart resources](#chart-resources)
40 | 4. [Getting a chart reference](#getting-a-chart-reference)
41 | 5. [JSCLabel Component](#jsclabel-component)
42 | 6. [JSCGrid Component](#jscgrid-component)
43 |
44 |
45 |
46 | ### Install
47 |
48 | Install the jscharting-vue chart component.
49 |
50 | ```console
51 | npm i -D jscharting-vue
52 | ```
53 |
54 | or
55 |
56 | ```console
57 | yarn add jscharting-vue
58 | ```
59 |
60 |
61 | #### Run Examples
62 | Clone the [Github repo](https://github.com/jscharting/jscharting-vue) locally. Example charts are located in the `/examples` folder.
63 |
64 | To view the examples you can run the webpack dev server: localhost:8080
65 |
66 | ```console
67 | npm run serve-examples
68 | ```
69 |
70 | Or build the project manually.
71 |
72 | ```console
73 | npm run build-examples
74 | ```
75 |
76 |
77 | ### Usage
78 |
79 | #### Simple example
80 | This example shows how you can use the `JSCharting` component of the `jscharting-vue` module to make a column chart.
81 |
82 | ```html
83 |
84 |
85 |
86 |
87 |
113 |
114 |
119 |
120 | ```
121 |
122 | #### JSCharting Component Options
123 | These customizable options are available with the `JSCharting` component.
124 |
125 | | Parameter | Type | Description |
126 | | --------- | :----: | ----------- |
127 | | `:options` | object | JSCharting chart configuration object. Please refer to the [API documentation](https://jscharting.com/documentation/#node=Home.API.json.Chart). |
128 | | `:mutable` | boolean | (Optional) When set to true, `chart.options()` is called with the updated props instead of recreating the chart object.
129 | | `:ignoreStateUpdate` | boolean | (Optional) `false` by default. When `true`, the chart will ignore updates applied when reactive property is changed. This is useful when you want to update the chart directly. |
130 | | `@rendered` | event | (Optional) Event triggered when the chart is finished rendering. The first argument of the event handler is a reference to the created chart.|
131 |
132 | #### Typescript Typings
133 |
134 | You can use type definitions for chart configuration properties when using typescript. Import the types using:
135 |
136 | ```typescript
137 | import { JSCChartConfig } from 'jscharting'; // -> JSCChartConfig
138 | // OR
139 | import JSCharting, { JSC } from 'jscharting-vue'; // -> JSC.JSCChartConfig
140 | ```
141 |
142 | Here's an example using types.
143 |
144 | ```typescript
145 |
146 |
147 |
148 |
149 |
150 |
151 |
186 | ```
187 |
188 | #### Updating charts
189 |
190 | There are a couple ways to update live charts.
191 |
192 | ##### Using reactive properties
193 |
194 | Updating reactive `data` properties affects the chart in two ways, depending on the option `mutable`. When the component option `mutable` is true, only new options are passed to the chart using chart.options(). When `mutable` is false, changing data will reset the chart with a new instance.
195 |
196 | Charts with `mutable == true` option perform better and allow charts to animate changes. Only new options that are changing
197 | need to be passed to the chart. You can animate chart updates using this more.
198 |
199 | Using `mutable == false` is sometimes useful when a chart must be drastically modified. In this mode, all options should be
200 | available for a new chart instance to use.
201 |
202 | See [animating series and points](https://jscharting.com/tutorials/types/js-series-point-animation-chart/) for more information.
203 |
204 | ```html
205 |
206 |
207 |
208 | Update Data
209 |
210 |
211 |
212 |
253 | ```
254 |
255 | ##### Updating chart directly
256 |
257 | JSCharting has a rich API for direct interaction with chart elements programmatically. This approach is more flexible and can
258 | update the chart more efficiently when performance is a priority. Charts can also be decoupled from `data` updates
259 | and managed independently.
260 |
261 | Set the `ignoreStateUpdate` option to true when you want to use reactive properties for other purposes but not affect the chart itself.
262 |
263 | See [getting a chart reference](#getting-a-chart-reference). Once a chart reference is available, you can update chart options as needed with code such as:
264 |
265 | ```js
266 | this.$refs.chart.instance.series().points(p => p.y > 50).options({ color: "red" });
267 | ```
268 |
269 | This line will make all points on a chart with y values greater than 50 red. Another example:
270 |
271 | ```js
272 | this.$refs.chart.instance.series(0).points(0).options({ y: 100 });
273 | ```
274 |
275 | This updates the "Purchases" series with new random points.
276 |
277 |
278 | ```html
279 |
280 |
281 |
282 | Update Data
283 |
284 |
285 |
286 |
323 | ```
324 |
325 | ### Chart resources
326 | The JSCharting library includes resources (modules, mapping data, polyfills, icons library) that load automatically
327 | when they are needed. The `examples/` webpack [vue.config.js](examples/vue.config.js) configuration copies
328 | these resources to the `./dist/assets/jscharting` folder during built.
329 |
330 | The `examples/src/App.vue` file calls the `JSC.defaults()` function to set `baseUrl` option
331 | with this path globally in its constructor. All subsequent charts will be aware of the location of these resources.
332 |
333 | ```js
334 | import { JSC } from 'jscharting-vue';
335 | JSC.defaults({ baseUrl: 'dist/assets/jscharting', debug:true });
336 | ```
337 |
338 | **Note:** If the chart does not find the resources path, it will download them from a CDN.
339 | Setting `debug:true` in the `JSC.defaults()` function during development is recommended as it will alert you when the
340 | CDN fallback is used. It is recommended to use a local copy of resources in production.
341 |
342 | ### Getting a chart reference
343 |
344 | You can get a chart instance using the `ref` attribute:
345 | ```html
346 |
347 |
348 |
349 |
350 |
364 | ```
365 |
366 | You can also store it when the chart `@rendered` event is executed.
367 |
368 | ```html
369 |
370 |
371 |
372 |
373 |
397 | ```
398 |
399 |
400 | ### JSCLabel Component
401 | This plugin also contains an implementation of the `JSCLabel` component for vue.
402 | You can use it to create very efficient micro chart SVG images in your vue projects.
403 | Here's a simple example.
404 |
405 | ```html
406 |
407 |
408 |
409 |
410 |
426 | ```
427 |
428 | The [Microchart Fast](examples/components/microchartFast.vue) example demonstrates updating a microchart using the
429 | JSCLabel component quickly.
430 |
431 | See the [microcharts tutorial](https://jscharting.com/tutorials/types/js-microcharts/) for configuration
432 | string syntax and more information.
433 |
434 | ### JSCGrid Component
435 | The `JSCGrid` data grid component is also included. You can use it to create data grids from JSON arrays.
436 | Here's a data grid example.
437 |
438 | ```html
439 |
440 |
441 |
442 |
443 |
471 | ```
472 |
473 | The available options for the data grid component are.
474 |
475 | | Parameter | Type | Description |
476 | | --------- | :----: | ----------- |
477 | | `:options` | object | JSCGrid configuration object. Please refer to the [API documentation](https://jscharting.com/documentation/#node=Home.API.json.Types.grid). |
478 | | `:mutable` | boolean | (Optional) When set to true, `grid.options()` is called with the updated props instead of recreating the grid instance.
479 | | `@rendered` | event | Triggered when the grid is finished rendering. The first argument of the event handler is a reference to the created grid.|
480 |
481 | ```typescript
482 | import { JSCGridConfig } from 'jscharting'; // -> JSCGridConfig
483 | // OR
484 | import JSCharting, { JSC } from 'jscharting-vue'; // -> JSC.JSCGridConfig
485 | ```
486 |
487 |
488 | See the [data grid tutorial](https://jscharting.com/tutorials/types/js-data-grid/) for configuration
489 | syntax and more information.
490 |
491 |
492 |
493 |
494 |
495 |
496 |
--------------------------------------------------------------------------------
/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: ['@vue/cli-plugin-babel/preset']
3 | };
4 |
--------------------------------------------------------------------------------
/examples-vue3/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /dist
4 |
5 | # local env files
6 | .env.local
7 | .env.*.local
8 |
9 | # Log files
10 | npm-debug.log*
11 | yarn-debug.log*
12 | yarn-error.log*
13 |
14 | # Editor directories and files
15 | .idea
16 | .vscode
17 | *.suo
18 | *.ntvs*
19 | *.njsproj
20 | *.sln
21 | *.sw?
22 |
23 | /public/assets
--------------------------------------------------------------------------------
/examples-vue3/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: [
3 | '@vue/cli-plugin-babel/preset'
4 | ]
5 | }
6 |
--------------------------------------------------------------------------------
/examples-vue3/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jscharting-vue3-examples",
3 | "version": "1.4.0",
4 | "private": true,
5 | "description": "Examples using the JSCharting plugin for Vue3.",
6 | "scripts": {
7 | "serve": "vue-cli-service serve --port=3333",
8 | "build": "vue-cli-service build"
9 | },
10 | "author": "JSCharting (https://jscharting.com/support.htm)",
11 | "bugs": {
12 | "email": "support@jscharting.com"
13 | },
14 | "license": "jscharting.com/store/",
15 | "dependencies": {
16 | "core-js": "^3.10.0",
17 | "jscharting-vue": "2.4.0",
18 | "vue": ">=3.0.5"
19 | },
20 | "devDependencies": {
21 | "@vue/cli-plugin-babel": "^4.5.12",
22 | "@vue/cli-plugin-typescript": "^4.5.12",
23 | "@vue/cli-service": "^4.5.12",
24 | "@vue/compiler-sfc": "^3.0.11",
25 | "typescript": "~3.9.3"
26 | },
27 | "peerDependencies": {
28 | "vue": ">=3.0.5"
29 | },
30 | "browserslist": [
31 | "> 1%",
32 | "last 2 versions"
33 | ]
34 | }
35 |
--------------------------------------------------------------------------------
/examples-vue3/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jscharting/jscharting-vue/9c1f4a8ba8e0e8d3c15c084bad65900468da87fa/examples-vue3/public/favicon.ico
--------------------------------------------------------------------------------
/examples-vue3/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | JavaScript chart plugin for Vue.js | JSCharting
9 |
10 |
11 |
12 | We're sorry but jscharting-vue doesn't work properly without
14 | JavaScript enabled. Please enable it to continue.
16 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/examples-vue3/public/jsc-vue-logo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/examples-vue3/public/resources/access-to-drinking-water-by-country.csv:
--------------------------------------------------------------------------------
1 | country_name,country_code,value
2 | Afghanistan,AF,67.06462342
3 | Albania,AL,91.03922767
4 | Algeria,DZ,93.55588814
5 | Andorra,AD,99.99999628
6 | Angola,AO,55.84290487
7 | Antigua and Barb.,AG,96.73918628
8 | Argentina,AR,99.07837465
9 | Armenia,AM,99.91337654
10 | Aruba,AW,97.86902338
11 | Australia,AU,99.9699356
12 | Austria,AT,100
13 | Azerbaijan,AZ,91.38573994
14 | Bahamas,BS,98.8869605
15 | Bahrain,BH,100
16 | Bangladesh,BD,97.01600557
17 | Barbados,BB,98.49444758
18 | Belarus,BY,96.48397119
19 | Belgium,BE,100
20 | Belize,BZ,97.99257979
21 | Benin,BJ,66.41472534
22 | Bermuda,BM,99.90314002
23 | Bhutan,BT,97.23338334
24 | Bolivia,BO,92.84873518
25 | Bosnia and Herz.,BA,96.14235609
26 | Botswana,BW,90.33771336
27 | Brazil,BR,98.19339267
28 | British Virgin Is.,VG,99.86438356
29 | Brunei,BN,99.90000909
30 | Bulgaria,BG,99.10834282
31 | Burkina Faso,BF,47.88812734
32 | Burundi,BI,60.83054892
33 | Cambodia,KH,78.51065693
34 | Cameroon,CM,60.38486395
35 | Canada,CA,99.43624408
36 | Cape Verde,CV,87.08320801
37 | Cayman Is.,KY,96.125
38 | Central African Rep.,CF,46.33375843
39 | Chad,TD,38.70059943
40 | Chile,CL,99.8327912
41 | China,CN,92.84613551
42 | Colombia,CO,97.30010961
43 | Comoros,KM,80.16751687
44 | Congo,CG,73.21776097
45 | Costa Rica,CR,99.70151391
46 | Côte d'Ivoire,CI,72.86894644
47 | Croatia,HR,99.58666656
48 | Cuba,CU,95.32758231
49 | Curaçao,CW,99.49775185
50 | Cyprus,CY,99.61328615
51 | Czech Rep.,CZ,99.8802588
52 | Dem. Rep. Congo,CD,43.24332204
53 | Dem. Rep. Korea,KP,94.51245282
54 | Denmark,DK,99.99999894
55 | Djibouti,DJ,75.63230768
56 | Dominica,DM,96.5
57 | Dominican Rep.,DO,96.69022475
58 | Ecuador,EC,93.99453654
59 | Egypt,EG,99.10573046
60 | El Salvador,SV,97.38837497
61 | Eq. Guinea,GQ,64.66581781
62 | Eritrea,ER,51.84971842
63 | Estonia,EE,99.71282684
64 | Ethiopia,ET,41.05995213
65 | Fiji,FJ,93.79091928
66 | Finland,FI,100
67 | France,FR,100
68 | Gabon,GA,85.77100366
69 | Gambia,GM,77.99156682
70 | Georgia,GE,98.39443935
71 | Germany,DE,100
72 | Ghana,GH,81.45338968
73 | Greece,GR,100
74 | Greenland,GL,99.99999747
75 | Grenada,GD,95.62865044
76 | Guam,GU,99.6952
77 | Guatemala,GT,94.19058074
78 | Guinea,GN,61.89872308
79 | Guinea-Bissau,GW,66.63441423
80 | Guyana,GY,95.53974768
81 | Haiti,HT,65.46682593
82 | Honduras,HN,94.82710944
83 | Hong Kong,HK,100
84 | Hungary,HU,99.99999749
85 | Iceland,IS,99.99999943
86 | India,IN,92.67464257
87 | Indonesia,ID,89.34401223
88 | Iran,IR,95.24454488
89 | Iraq,IQ,96.53347833
90 | Ireland,IE,97.39454461
91 | Isle of Man,IM,99.075
92 | Israel,IL,100
93 | Italy,IT,99.44273388
94 | Jamaica,JM,90.64843618
95 | Japan,JP,99.01020833
96 | Jordan,JO,98.93722265
97 | Kazakhstan,KZ,95.62750722
98 | Kenya,KE,58.91633339
99 | Korea,KR,99.787655
100 | Kuwait,KW,100
101 | Kyrgyzstan,KG,87.4559029
102 | Lao PDR,LA,82.06189686
103 | Latvia,LV,98.62618237
104 | Lebanon,LB,92.6
105 | Lesotho,LS,68.64993758
106 | Liberia,LR,72.94803095
107 | Libya,LY,98.52894737
108 | Liechtenstein,LI,100
109 | Lithuania,LT,97.5420681
110 | Luxembourg,LU,99.88960319
111 | Macao,MO,100
112 | Macedonia,MK,93.14146285
113 | Madagascar,MG,54.40398164
114 | Malawi,MW,68.83187676
115 | Malaysia,MY,96.69593891
116 | Mali,ML,78.26082958
117 | Malta,MT,100
118 | Mauritania,MR,70.69618765
119 | Mexico,MX,99.31821889
120 | Moldova,MD,89.05565265
121 | Monaco,MC,100
122 | Mongolia,MN,83.31311501
123 | Montenegro,ME,97.04205011
124 | Morocco,MA,86.77851266
125 | Mozambique,MZ,55.69397562
126 | Myanmar,MM,81.77404853
127 | Namibia,NA,82.54109887
128 | Nauru,NR,99.48493442
129 | Nepal,NP,88.81224952
130 | Netherlands,NL,99.99999928
131 | New Caledonia,NC,99.32859759
132 | New Zealand,NZ,100
133 | Nicaragua,NI,81.52476354
134 | Niger,NE,50.27306506
135 | Nigeria,NG,71.3766307
136 | Norway,NO,100
137 | Oman,OM,91.93807842
138 | Pakistan,PK,91.46545073
139 | Panama,PA,96.38241895
140 | Papua New Guinea,PG,41.32704942
141 | Paraguay,PY,99.61019773
142 | Peru,PE,91.12787097
143 | Philippines,PH,93.56837604
144 | Poland,PL,99.72468254
145 | Portugal,PT,99.90766021
146 | Puerto Rico,PR,97.12479066
147 | Qatar,QA,99.56810194
148 | Romania,RO,100
149 | Russia,RU,97.0899112
150 | Rwanda,RW,57.71327853
151 | S. Sudan,SS,40.67601215
152 | Saint Lucia,LC,98.16200142
153 | Samoa,WS,97.38259524
154 | San Marino,SM,100
155 | São Tomé and Principe,ST,84.29015993
156 | Saudi Arabia,SA,100
157 | Senegal,SN,80.67785387
158 | Serbia,RS,85.52211629
159 | Sierra Leone,SL,60.80698694
160 | Singapore,SG,100
161 | Sint Maarten,SX,95.07411955
162 | Slovakia,SK,99.78773411
163 | Slovenia,SI,99.53502551
164 | Solomon Is.,SB,67.77595721
165 | Somalia,SO,52.43618907
166 | South Africa,ZA,92.67870194
167 | Spain,ES,99.92627831
168 | Sri Lanka,LK,89.41629243
169 | St. Vin. and Gren.,VC,95.1452199
170 | Sudan,SD,60.26709116
171 | Suriname,SR,95.42474497
172 | Sweden,SE,100
173 | Switzerland,CH,100
174 | Syria,SY,97.21650621
175 | Tajikistan,TJ,81.1962748
176 | Tanzania,TZ,56.72645032
177 | Thailand,TH,99.93071158
178 | Timor-Leste,TP,78.34386574
179 | Togo,TG,65.12884019
180 | Tonga,TO,99.90682775
181 | Trinidad and Tobago,TT,98.18496206
182 | Tunisia,TN,96.25470364
183 | Turkey,TR,98.87571815
184 | Turkmenistan,TM,98.81432798
185 | Turks and Caicos Is.,TC,94.31818182
186 | U.S. Virgin Is.,VI,98.71826738
187 | Uganda,UG,49.10403239
188 | Ukraine,UA,93.79082011
189 | United Arab Emirates,AE,98.04550656
190 | United Kingdom,GB,100
191 | United States,US,99.26919207
192 | Uruguay,UY,99.4023635
193 | Uzbekistan,UZ,97.83345271
194 | Vanuatu,VU,91.25680395
195 | Venezuela,VE,95.72371132
196 | Vietnam,VN,94.71880561
197 | Yemen,YE,63.47347434
198 | Zambia,ZM,59.96375651
199 | Zimbabwe,ZW,64.0512297
--------------------------------------------------------------------------------
/examples-vue3/public/resources/stepData17-18.csv:
--------------------------------------------------------------------------------
1 | Date,Actual,Goal
2 | 1/1/2017,,
3 | 1/2/2017,,
4 | 1/3/2017,1500,7500
5 | 1/4/2017,3850,7125
6 | 1/5/2017,3540,6768
7 | 1/6/2017,2712,6429
8 | 1/7/2017,2511,6429
9 | 1/8/2017,1262,6107
10 | 1/9/2017,2099,5801
11 | 1/10/2017,2579,5510
12 | 1/11/2017,1572,5234
13 | 1/12/2017,1488,4972
14 | 1/13/2017,2677,4947
15 | 1/14/2017,1057,4922
16 | 1/15/2017,1552,4897
17 | 1/16/2017,2249,4872
18 | 1/17/2017,1180,4847
19 | 1/18/2017,1790,4822
20 | 1/19/2017,2156,4797
21 | 1/20/2017,2128,4773
22 | 1/21/2017,8531,4749
23 | 1/22/2017,1333,5033
24 | 1/23/2017,1580,4848
25 | 1/24/2017,2283,4823
26 | 1/25/2017,661,4798
27 | 1/26/2017,3373,4774
28 | 1/27/2017,2199,4750
29 | 1/28/2017,1307,4726
30 | 1/29/2017,2276,4702
31 | 1/30/2017,2011,4678
32 | 1/31/2017,1928,4654
33 | 2/1/2017,2003,4630
34 | 2/2/2017,3178,4606
35 | 2/3/2017,1763,4582
36 | 2/4/2017,3046,4559
37 | 2/5/2017,2120,4536
38 | 2/6/2017,4585,4513
39 | 2/7/2017,3767,4535
40 | 2/8/2017,2510,4512
41 | 2/9/2017,3116,4489
42 | 2/10/2017,2498,4466
43 | 2/11/2017,3692,4443
44 | 2/12/2017,3306,4420
45 | 2/13/2017,1297,4397
46 | 2/14/2017,2196,4375
47 | 2/15/2017,4167,4353
48 | 2/16/2017,3518,4331
49 | 2/17/2017,1894,4309
50 | 2/18/2017,3215,4287
51 | 2/19/2017,3421,4265
52 | 2/20/2017,3070,4243
53 | 2/21/2017,3549,4221
54 | 2/22/2017,2750,4199
55 | 2/23/2017,2379,4178
56 | 2/24/2017,351,4157
57 | 2/25/2017,9481,4157
58 | 2/26/2017,4538,4406
59 | 2/27/2017,2548,4439
60 | 2/28/2017,3152,4416
61 | 3/1/2017,2380,4393
62 | 3/2/2017,2033,4371
63 | 3/3/2017,1983,4349
64 | 3/4/2017,13,4327
65 | 3/5/2017,0,4327
66 | 3/6/2017,2735,4327
67 | 3/7/2017,2383,4305
68 | 3/8/2017,3053,4283
69 | 3/9/2017,4784,4261
70 | 3/10/2017,3795,4391
71 | 3/11/2017,433,4369
72 | 3/12/2017,469,4369
73 | 3/13/2017,1623,4347
74 | 3/14/2017,315,4325
75 | 3/15/2017,1861,4325
76 | 3/16/2017,2095,4303
77 | 3/17/2017,1362,4281
78 | 3/18/2017,2928,4259
79 | 3/19/2017,1897,4237
80 | 3/20/2017,2112,4215
81 | 3/21/2017,4625,4193
82 | 3/22/2017,2419,4301
83 | 3/23/2017,590,4279
84 | 3/24/2017,1015,4279
85 | 3/25/2017,2660,4257
86 | 3/26/2017,3005,4235
87 | 3/27/2017,3526,4213
88 | 3/28/2017,3773,4191
89 | 3/29/2017,2503,4170
90 | 3/30/2017,3481,4149
91 | 3/31/2017,2333,4128
92 | 4/1/2017,50,4107
93 | 4/2/2017,1240,4107
94 | 4/3/2017,3503,4086
95 | 4/4/2017,3663,4065
96 | 4/5/2017,2750,4044
97 | 4/6/2017,2803,4023
98 | 4/7/2017,2535,4002
99 | 4/8/2017,2493,3981
100 | 4/9/2017,3901,3961
101 | 4/10/2017,973,3941
102 | 4/11/2017,5842,3921
103 | 4/12/2017,2114,4156
104 | 4/13/2017,2219,4135
105 | 4/14/2017,4411,4114
106 | 4/15/2017,2253,4188
107 | 4/16/2017,2388,4167
108 | 4/17/2017,2934,4146
109 | 4/18/2017,4269,4125
110 | 4/19/2017,4081,4161
111 | 4/20/2017,2321,4157
112 | 4/21/2017,2849,4136
113 | 4/22/2017,2074,4115
114 | 4/23/2017,2634,4094
115 | 4/24/2017,4255,4073
116 | 4/25/2017,3343,4118
117 | 4/26/2017,4747,4097
118 | 4/27/2017,2484,4259
119 | 4/28/2017,2680,4237
120 | 4/29/2017,2275,4215
121 | 4/30/2017,2158,4193
122 | 5/1/2017,2023,4172
123 | 5/2/2017,2602,4151
124 | 5/3/2017,6568,4130
125 | 5/4/2017,2366,4377
126 | 5/5/2017,2286,4355
127 | 5/6/2017,1670,4333
128 | 5/7/2017,3172,4311
129 | 5/8/2017,6373,4289
130 | 5/9/2017,1381,4546
131 | 5/10/2017,1861,4523
132 | 5/11/2017,2240,4500
133 | 5/12/2017,2916,4477
134 | 5/13/2017,2263,4454
135 | 5/14/2017,2662,4431
136 | 5/15/2017,1690,4408
137 | 5/16/2017,3090,4385
138 | 5/17/2017,3753,4363
139 | 5/18/2017,2376,4341
140 | 5/19/2017,2955,4319
141 | 5/20/2017,1371,4319
142 | 5/21/2017,1791,4297
143 | 5/22/2017,1830,4275
144 | 5/23/2017,1681,4253
145 | 5/24/2017,3139,4231
146 | 5/25/2017,3110,4209
147 | 5/26/2017,1540,4187
148 | 5/27/2017,3976,4166
149 | 5/28/2017,8090,4145
150 | 5/29/2017,4821,4393
151 | 5/30/2017,5181,4500
152 | 5/31/2017,5745,4670
153 | 6/1/2017,5479,4938
154 | 6/2/2017,5259,5073
155 | 6/3/2017,2749,5119
156 | 6/4/2017,1226,5000
157 | 6/5/2017,9985,5000
158 | 6/6/2017,10535,5299
159 | 6/7/2017,8659,5616
160 | 6/8/2017,9028,5952
161 | 6/9/2017,16761,6309
162 | 6/10/2017,6610,6687
163 | 6/11/2017,2164,6683
164 | 6/12/2017,2289,6348
165 | 6/13/2017,4421,6030
166 | 6/14/2017,4638,5728
167 | 6/15/2017,3290,5441
168 | 6/16/2017,2709,5168
169 | 6/17/2017,2551,4909
170 | 6/18/2017,2308,4884
171 | 6/19/2017,4506,4859
172 | 6/20/2017,3591,4834
173 | 6/21/2017,5648,4809
174 | 6/22/2017,9163,5018
175 | 6/23/2017,6550,5319
176 | 6/24/2017,3950,5626
177 | 6/25/2017,3586,5542
178 | 6/26/2017,5305,5264
179 | 6/27/2017,5390,5290
180 | 6/28/2017,4260,5316
181 | 6/29/2017,8556,5263
182 | 6/30/2017,4439,5578
183 | 7/1/2017,4758,5521
184 | 7/2/2017,8561,5253
185 | 7/3/2017,4736,5568
186 | 7/4/2017,5146,5526
187 | 7/5/2017,2171,5393
188 | 7/6/2017,1878,5393
189 | 7/7/2017,2347,5123
190 | 7/8/2017,6653,4866
191 | 7/9/2017,3692,5157
192 | 7/10/2017,2062,5083
193 | 7/11/2017,4352,4828
194 | 7/12/2017,5514,4803
195 | 7/13/2017,5949,4980
196 | 7/14/2017,7423,5222
197 | 7/15/2017,15394,5535
198 | 7/16/2017,9430,5867
199 | 7/17/2017,4795,6219
200 | 7/18/2017,4802,6147
201 | 7/19/2017,6233,5839
202 | 7/20/2017,1955,5937
203 | 7/21/2017,5597,5737
204 | 7/22/2017,4136,5688
205 | 7/23/2017,2045,5403
206 | 7/24/2017,6030,5132
207 | 7/25/2017,6122,5356
208 | 7/26/2017,5325,5547
209 | 7/27/2017,5777,5535
210 | 7/28/2017,6052,5595
211 | 7/29/2017,5337,5709
212 | 7/30/2017,5166,5690
213 | 7/31/2017,4913,5506
214 | 8/1/2017,6568,5298
215 | 8/2/2017,7344,5615
216 | 8/3/2017,6158,5951
217 | 8/4/2017,3839,6002
218 | 8/5/2017,3928,6002
219 | 8/6/2017,7310,5898
220 | 8/7/2017,4551,6251
221 | 8/8/2017,5809,6166
222 | 8/9/2017,7765,6041
223 | 8/10/2017,6371,6403
224 | 8/11/2017,6650,6401
225 | 8/12/2017,5060,6463
226 | 8/13/2017,11972,6463
227 | 8/14/2017,6251,6850
228 | 8/15/2017,6600,6820
229 | 8/16/2017,1891,6743
230 | 8/17/2017,3229,6405
231 | 8/18/2017,5688,6084
232 | 8/19/2017,3249,5945
233 | 8/20/2017,4364,5647
234 | 8/21/2017,5602,5364
235 | 8/22/2017,5590,5423
236 | 8/23/2017,6094,5464
237 | 8/24/2017,3078,5621
238 | 8/25/2017,5359,5500
239 | 8/26/2017,3170,5450
240 | 8/27/2017,1096,5180
241 | 8/28/2017,6610,4930
242 | 8/29/2017,7558,5230
243 | 8/30/2017,6242,5550
244 | 8/31/2017,6796,5730
245 | 9/1/2017,6701,6000
246 | 9/2/2017,7173,6180
247 | 9/3/2017,13567,6430
248 | 9/4/2017,7074,6820
249 | 9/5/2017,5486,6890
250 | 9/6/2017,6793,6820
251 | 9/7/2017,6598,6810
252 | 9/8/2017,6850,6740
253 | 9/9/2017,2272,6780
254 | 9/10/2017,5876,6560
255 | 9/11/2017,6317,6320
256 | 9/12/2017,5801,6320
257 | 9/13/2017,4603,6140
258 | 9/14/2017,4890,5840
259 | 9/15/2017,5735,5550
260 | 9/16/2017,7111,5600
261 | 9/17/2017,7967,5940
262 | 9/18/2017,5513,6300
263 | 9/19/2017,5225,6260
264 | 9/20/2017,6120,5950
265 | 9/21/2017,5736,6000
266 | 9/22/2017,5912,5990
267 | 9/23/2017,1392,5970
268 | 9/24/2017,4498,5680
269 | 9/25/2017,2265,5400
270 | 9/26/2017,4204,5130
271 | 9/27/2017,5708,4880
272 | 9/28/2017,5150,5090
273 | 9/29/2017,6650,5120
274 | 9/30/2017,7923,5430
275 | 10/1/2017,1684,5760
276 | 10/2/2017,5201,5560
277 | 10/3/2017,5367,5440
278 | 10/4/2017,6734,5420
279 | 10/5/2017,5587,5750
280 | 10/6/2017,2813,5750
281 | 10/7/2017,9899,5470
282 | 10/8/2017,3647,5800
283 | 10/9/2017,6241,5700
284 | 10/10/2017,2789,5840
285 | 10/11/2017,6592,5690
286 | 10/12/2017,10167,5920
287 | 10/13/2017,5816,6280
288 | 10/14/2017,3095,6260
289 | 10/15/2017,7773,5950
290 | 10/16/2017,9873,6310
291 | 10/17/2017,8544,6690
292 | 10/18/2017,7676,7100
293 | 10/19/2017,6595,7250
294 | 10/20/2017,5861,7220
295 | 10/21/2017,1578,7220
296 | 10/22/2017,1866,6860
297 | 10/23/2017,4245,6520
298 | 10/24/2017,3058,6200
299 | 10/25/2017,2320,5890
300 | 10/26/2017,8169,5600
301 | 10/27/2017,5189,5940
302 | 10/28/2017,2614,5910
303 | 10/29/2017,1971,5620
304 | 10/30/2017,7309,5340
305 | 10/31/2017,6420,5660
306 | 11/1/2017,3238,5850
307 | 11/2/2017,5853,5720
308 | 11/3/2017,2825,5760
309 | 11/4/2017,2076,5620
310 | 11/5/2017,2147,5340
311 | 11/6/2017,3062,5080
312 | 11/7/2017,1355,4830
313 | 11/8/2017,886,4810
314 | 11/9/2017,5416,4790
315 | 11/10/2017,1302,4950
316 | 11/11/2017,1421,4930
317 | 11/12/2017,3101,4910
318 | 11/13/2017,1881,4890
319 | 11/14/2017,2115,4870
320 | 11/15/2017,1591,4850
321 | 11/16/2017,590,4830
322 | 11/17/2017,1907,4810
323 | 11/18/2017,7156,4790
324 | 11/19/2017,1313,5080
325 | 11/20/2017,2462,4900
326 | 11/21/2017,1601,4880
327 | 11/22/2017,2540,4860
328 | 11/23/2017,2466,4840
329 | 11/24/2017,202,4820
330 | 11/25/2017,0,4820
331 | 11/26/2017,,
332 | 11/27/2017,3578,4820
333 | 11/28/2017,3370,4800
334 | 11/29/2017,6656,4780
335 | 11/30/2017,1779,5070
336 | 12/1/2017,2482,4910
337 | 12/2/2017,1485,4890
338 | 12/3/2017,1317,4870
339 | 12/4/2017,2741,4850
340 | 12/5/2017,5030,4830
341 | 12/6/2017,3164,4880
342 | 12/7/2017,1503,4860
343 | 12/8/2017,1505,4840
344 | 12/9/2017,4063,4820
345 | 12/10/2017,4865,4800
346 | 12/11/2017,3451,4830
347 | 12/12/2017,1870,4810
348 | 12/13/2017,3623,4790
349 | 12/14/2017,5521,4790
350 | 12/15/2017,6060,4980
351 | 12/16/2017,11539,5250
352 | 12/17/2017,8065,5570
353 | 12/18/2017,8253,5910
354 | 12/19/2017,7496,6270
355 | 12/20/2017,2770,6580
356 | 12/21/2017,5247,6580
357 | 12/22/2017,1213,6520
358 | 12/23/2017,1909,6200
359 | 12/24/2017,2256,5890
360 | 12/25/2017,1988,5600
361 | 12/26/2017,1924,5320
362 | 12/27/2017,1763,5060
363 | 12/28/2017,282,4810
364 | 12/29/2017,1418,4810
365 | 12/30/2017,2838,4790
366 | 12/31/2017,3383,4770
367 | 1/1/2018,2456,4650
368 | 1/2/2018,2200,4220
369 | 1/3/2018,4786,3820
370 | 1/4/2018,3068,4670
371 | 1/5/2018,0,4670
372 | 1/6/2018,3168,4670
373 | 1/7/2018,2478,4650
374 | 1/8/2018,1622,4630
375 | 1/9/2018,3002,4610
376 | 1/10/2018,1776,4590
377 | 1/11/2018,,
378 | 1/12/2018,1605,4570
379 | 1/13/2018,3843,4550
380 | 1/14/2018,1075,4530
381 | 1/15/2018,57,4510
382 | 1/16/2018,1569,4510
383 | 1/17/2018,1887,4490
384 | 1/18/2018,1563,4470
385 | 1/19/2018,1483,4450
386 | 1/20/2018,3091,4430
387 | 1/21/2018,2231,4410
388 | 1/22/2018,2168,4390
389 | 1/23/2018,986,4370
390 | 1/24/2018,2778,4370
391 | 1/25/2018,1444,4350
392 | 1/26/2018,1167,4330
393 | 1/27/2018,1536,4310
394 | 1/28/2018,3690,4290
395 | 1/29/2018,1384,4270
396 | 1/30/2018,2387,4250
397 | 1/31/2018,756,4230
398 | 2/1/2018,1364,4230
399 | 2/2/2018,4270,4210
400 | 2/3/2018,2253,4240
401 | 2/4/2018,2351,4220
402 | 2/5/2018,2037,4200
403 | 2/6/2018,1738,4180
404 | 2/7/2018,1573,4160
405 | 2/8/2018,1008,4140
406 | 2/9/2018,4263,4120
407 | 2/10/2018,5367,4160
408 | 2/11/2018,6840,4410
409 | 2/12/2018,1753,4680
410 | 2/13/2018,1639,4660
411 | 2/14/2018,3396,4640
412 | 2/15/2018,300,4620
413 | 2/16/2018,1670,4620
414 | 2/17/2018,1340,4600
415 | 2/18/2018,2191,4580
416 | 2/19/2018,2728,4560
417 | 2/20/2018,1656,4540
418 | 2/21/2018,1890,4520
419 | 2/22/2018,873,4500
420 | 2/23/2018,1214,4500
421 | 2/24/2018,3394,4480
422 | 2/25/2018,4001,4460
423 | 2/26/2018,1733,4440
424 | 2/27/2018,953,4420
425 | 2/28/2018,1216,4400
426 | 3/1/2018,2724,4380
427 | 3/2/2018,559,4360
428 | 3/3/2018,,
429 | 3/4/2018,,
430 | 3/5/2018,1350,4360
431 | 3/6/2018,1173,4340
432 | 3/7/2018,2040,4320
433 | 3/8/2018,3752,4300
434 | 3/9/2018,1243,4280
435 | 3/10/2018,1925,4260
436 | 3/11/2018,1582,4240
437 | 3/12/2018,1340,4220
438 | 3/13/2018,337,4200
439 | 3/14/2018,1021,4200
440 | 3/15/2018,1726,4180
441 | 3/16/2018,2065,4160
442 | 3/17/2018,4097,4140
443 | 3/18/2018,1636,4130
444 | 3/19/2018,2267,4110
445 | 3/20/2018,1571,4090
446 | 3/21/2018,1336,4070
447 | 3/22/2018,1000,4050
448 | 3/23/2018,2240,4030
449 | 3/24/2018,4384,4010
450 | 3/25/2018,3887,4110
451 | 3/26/2018,1717,4100
452 | 3/27/2018,1276,4080
453 | 3/28/2018,3739,4060
454 | 3/29/2018,1409,4040
455 | 3/30/2018,149,4020
456 | 3/31/2018,3502,4020
457 | 4/1/2018,1936,4000
458 | 4/2/2018,2397,3980
459 | 4/3/2018,2488,3960
460 | 4/4/2018,1577,3940
461 | 4/5/2018,2199,3920
462 | 4/6/2018,1877,3900
463 | 4/7/2018,44,3880
464 | 4/8/2018,0,3880
465 | 4/9/2018,2839,3880
466 | 4/10/2018,2685,3860
467 | 4/11/2018,4828,3840
468 | 4/12/2018,2810,4070
469 | 4/13/2018,1284,4050
470 | 4/14/2018,3191,4030
471 | 4/15/2018,2004,4010
472 | 4/16/2018,1833,3990
473 | 4/17/2018,1720,3970
474 | 4/18/2018,1523,3950
475 | 4/19/2018,3023,3930
476 | 4/20/2018,3012,3910
477 | 4/21/2018,1610,3910
478 | 4/22/2018,1596,3890
479 | 4/23/2018,1952,3870
480 | 4/24/2018,3604,3850
481 | 4/25/2018,4491,3830
482 | 4/26/2018,2421,4000
483 | 4/27/2018,3180,3980
484 | 4/28/2018,2242,3960
485 | 4/29/2018,2215,3940
486 | 4/30/2018,1751,3920
487 | 5/1/2018,3852,3900
488 | 5/2/2018,4452,3890
489 | 5/3/2018,2680,4030
490 | 5/4/2018,3715,4010
491 | 5/5/2018,3930,3990
492 | 5/6/2018,6604,3990
493 | 5/7/2018,2750,4230
494 | 5/8/2018,7044,4210
495 | 5/9/2018,6760,4470
496 | 5/10/2018,9888,4740
497 | 5/11/2018,12647,5030
498 | 5/12/2018,3791,5340
499 | 5/13/2018,4881,5270
500 | 5/14/2018,4536,5270
501 | 5/15/2018,5399,5020
502 | 5/16/2018,3345,5120
503 | 5/17/2018,7400,5040
504 | 5/18/2018,8433,5350
505 | 5/19/2018,2602,5670
506 | 5/20/2018,552,5520
507 | 5/21/2018,2783,5250
508 | 5/22/2018,5568,4990
509 | 5/23/2018,4698,5140
510 | 5/24/2018,11471,5120
511 | 5/25/2018,7121,5430
512 | 5/26/2018,12291,5760
513 | 5/27/2018,5896,6110
514 | 5/28/2018,922,6100
515 | 5/29/2018,6736,5800
516 | 5/30/2018,5105,6040
517 | 5/31/2018,6873,6000
518 | 6/1/2018,6274,6220
519 | 6/2/2018,1987,6260
520 | 6/3/2018,5770,6050
521 | 6/4/2018,4741,4110
522 | 6/5/2018,6483,4180
523 | 6/6/2018,8651,4640
524 | 6/7/2018,6019,5450
525 | 6/8/2018,6301,5570
526 | 6/9/2018,16999,5720
527 | 6/10/2018,1823,7720
528 | 6/11/2018,2113,7130
529 | 6/12/2018,5120,6130
530 | 6/13/2018,5195,5930
531 | 6/14/2018,6483,5790
532 | 6/15/2018,6840,5860
533 | 6/16/2018,5509,6060
534 | 6/17/2018,2942,6010
535 | 6/18/2018,4394,5400
536 | 6/19/2018,5479,5200
537 | 6/20/2018,5277,5230
538 | 6/21/2018,13504,5240
539 | 6/22/2018,11973,6900
540 | 6/23/2018,15426,7920
541 | 6/24/2018,16525,9430
542 | 6/25/2018,3498,10850
543 | 6/26/2018,1913,10120
544 | 6/27/2018,1573,8480
545 | 6/28/2018,1585,7100
546 | 6/29/2018,1706,6000
547 | 6/30/2018,2835,5150
548 | 7/1/2018,1930,4690
549 | 7/2/2018,2317,4140
550 | 7/3/2018,5261,3780
551 | 7/4/2018,5930,3930
552 | 7/5/2018,5287,4330
553 | 7/6/2018,8729,4530
554 | 7/7/2018,1233,5370
555 | 7/8/2018,3412,4960
556 | 7/9/2018,2456,4650
557 | 7/10/2018,2200,4220
558 | 7/11/2018,4786,3820
559 |
--------------------------------------------------------------------------------
/examples-vue3/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
11 |
12 |
13 |
20 | {{ item.name }}
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
90 |
91 |
148 |
--------------------------------------------------------------------------------
/examples-vue3/src/assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jscharting/jscharting-vue/9c1f4a8ba8e0e8d3c15c084bad65900468da87fa/examples-vue3/src/assets/logo.png
--------------------------------------------------------------------------------
/examples-vue3/src/components/calendarHeatmap.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
54 |
--------------------------------------------------------------------------------
/examples-vue3/src/components/chartDash.vue:
--------------------------------------------------------------------------------
1 |
40 |
41 |
42 |
43 |
49 |
55 |
56 |
57 |
58 |
208 |
--------------------------------------------------------------------------------
/examples-vue3/src/components/chartDataGrid.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | With one setting, you can provide a datagrid representation of your charts.
4 |
5 |
9 |
10 |
11 |
51 |
--------------------------------------------------------------------------------
/examples-vue3/src/components/circularColorBar.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
115 |
--------------------------------------------------------------------------------
/examples-vue3/src/components/circularGauge.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
85 |
--------------------------------------------------------------------------------
/examples-vue3/src/components/dataGrid.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
35 |
--------------------------------------------------------------------------------
/examples-vue3/src/components/interactiveLine.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
Two way selection binding. Use dropdown or hover a series line.
4 |
5 | Selected:
6 |
7 | {{ ser.name }}
8 |
9 |
10 |
11 |
18 |
19 |
20 |
21 |
160 |
--------------------------------------------------------------------------------
/examples-vue3/src/components/liveData.vue:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
14 |
15 |
16 |
17 |
132 |
--------------------------------------------------------------------------------
/examples-vue3/src/components/mapChoropleth.vue:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
14 |
15 |
16 |
117 |
--------------------------------------------------------------------------------
/examples-vue3/src/components/masterDetail.vue:
--------------------------------------------------------------------------------
1 |
14 |
15 |
16 |
17 |
23 |
29 |
30 |
31 |
32 |
160 |
--------------------------------------------------------------------------------
/examples-vue3/src/components/methodUpdate.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Update Chart Options Data
5 |
6 |
7 |
8 |
69 |
--------------------------------------------------------------------------------
/examples-vue3/src/components/microchartFast.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | The JSCLabel chart is a simple string based generator that creates simple
4 | SVG charts very quickly.
5 |
6 |
7 | This chart is created with the string
8 | <chart type="column" data=12,23,... width=800 height=300>
9 |
10 |
11 | Microchart string reference:
12 | MicroCharts
15 |
16 |
17 |
18 |
19 |
61 |
--------------------------------------------------------------------------------
/examples-vue3/src/components/simpleLine.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
122 |
--------------------------------------------------------------------------------
/examples-vue3/src/main.ts:
--------------------------------------------------------------------------------
1 | import { createApp } from 'vue';
2 | import App from './App.vue';
3 |
4 | createApp(App).mount('#app');
5 |
--------------------------------------------------------------------------------
/examples-vue3/src/shims-vue.d.ts:
--------------------------------------------------------------------------------
1 | /* eslint-disable */
2 | declare module '*.vue' {
3 | import type { DefineComponent } from 'vue'
4 | const component: DefineComponent<{}, {}, any>
5 | export default component
6 | }
7 |
--------------------------------------------------------------------------------
/examples-vue3/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "esnext",
4 | "module": "esnext",
5 | "strict": true,
6 | "jsx": "preserve",
7 | "importHelpers": true,
8 | "moduleResolution": "node",
9 | "skipLibCheck": true,
10 | "esModuleInterop": true,
11 | "allowSyntheticDefaultImports": true,
12 | "sourceMap": true,
13 | "baseUrl": ".",
14 | "types": [
15 | "webpack-env"
16 | ],
17 | "paths": {
18 | "@/*": [
19 | "src/*"
20 | ]
21 | },
22 | "lib": [
23 | "esnext",
24 | "dom",
25 | "dom.iterable",
26 | "scripthost"
27 | ]
28 | },
29 | "include": [
30 | "src/**/*.ts",
31 | "src/**/*.tsx",
32 | "src/**/*.vue",
33 | "tests/**/*.ts",
34 | "tests/**/*.tsx"
35 | ],
36 | "exclude": [
37 | "node_modules"
38 | ]
39 | }
40 |
--------------------------------------------------------------------------------
/examples-vue3/vue.config.js:
--------------------------------------------------------------------------------
1 | const CopyWebpackPlugin = require('copy-webpack-plugin');
2 | const path = require('path');
3 |
4 | module.exports = {
5 | publicPath: process.env.NODE_ENV === 'production'
6 | ? '/jscharting-vue-examples/'
7 | : '/',
8 | configureWebpack: {
9 | plugins: [
10 | new CopyWebpackPlugin([
11 | {
12 | from: path.join(__dirname, 'node_modules/jscharting/dist/'),
13 | to: path.join(__dirname, 'dist/assets/jscharting/'),
14 | ignore: ['jscharting.*']
15 | }
16 | ])
17 | ]
18 | }
19 | };
20 |
--------------------------------------------------------------------------------
/examples/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /dist
4 |
5 | # local env files
6 | .env.local
7 | .env.*.local
8 |
9 | # Log files
10 | npm-debug.log*
11 | yarn-debug.log*
12 | yarn-error.log*
13 |
14 | # Editor directories and files
15 | .idea
16 | .vscode
17 | *.suo
18 | *.ntvs*
19 | *.njsproj
20 | *.sln
21 | *.sw?
22 |
23 | /public/assets
--------------------------------------------------------------------------------
/examples/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: ['@vue/cli-plugin-babel/preset']
3 | };
4 |
--------------------------------------------------------------------------------
/examples/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jscharting-vue-examples",
3 | "version": "1.4.0",
4 | "description": "Examples using the JSCharting plugin for Vue.js.",
5 | "private": true,
6 | "scripts": {
7 | "start": "vue-cli-service serve",
8 | "serve": "vue-cli-service serve",
9 | "build": "vue-cli-service build"
10 | },
11 | "author": "JSCharting (https://jscharting.com/support.htm)",
12 | "bugs": {
13 | "email": "support@jscharting.com"
14 | },
15 | "license": "jscharting.com/store/",
16 | "dependencies": {
17 | "core-js": "^3.8.3",
18 | "jscharting-vue": "^2.4.0",
19 | "vue": "^2.6.10"
20 | },
21 | "devDependencies": {
22 | "@vue/cli-plugin-babel": "^4.5.11",
23 | "@vue/cli-service": "^4.5.11",
24 | "copy-webpack-plugin": "^5.1.2",
25 | "vue-template-compiler": "^2.6.12"
26 | },
27 | "peerDependencies": {
28 | "vue": "^2.6.10"
29 | },
30 | "browserslist": [
31 | "> 1%",
32 | "last 2 versions"
33 | ]
34 | }
35 |
--------------------------------------------------------------------------------
/examples/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jscharting/jscharting-vue/9c1f4a8ba8e0e8d3c15c084bad65900468da87fa/examples/public/favicon.ico
--------------------------------------------------------------------------------
/examples/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | JavaScript chart plugin for Vue.js | JSCharting
9 |
10 |
11 |
12 | We're sorry but jscharting-vue doesn't work properly without
14 | JavaScript enabled. Please enable it to continue.
16 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/examples/public/jsc-vue-logo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/examples/public/resources/access-to-drinking-water-by-country.csv:
--------------------------------------------------------------------------------
1 | country_name,country_code,value
2 | Afghanistan,AF,67.06462342
3 | Albania,AL,91.03922767
4 | Algeria,DZ,93.55588814
5 | Andorra,AD,99.99999628
6 | Angola,AO,55.84290487
7 | Antigua and Barb.,AG,96.73918628
8 | Argentina,AR,99.07837465
9 | Armenia,AM,99.91337654
10 | Aruba,AW,97.86902338
11 | Australia,AU,99.9699356
12 | Austria,AT,100
13 | Azerbaijan,AZ,91.38573994
14 | Bahamas,BS,98.8869605
15 | Bahrain,BH,100
16 | Bangladesh,BD,97.01600557
17 | Barbados,BB,98.49444758
18 | Belarus,BY,96.48397119
19 | Belgium,BE,100
20 | Belize,BZ,97.99257979
21 | Benin,BJ,66.41472534
22 | Bermuda,BM,99.90314002
23 | Bhutan,BT,97.23338334
24 | Bolivia,BO,92.84873518
25 | Bosnia and Herz.,BA,96.14235609
26 | Botswana,BW,90.33771336
27 | Brazil,BR,98.19339267
28 | British Virgin Is.,VG,99.86438356
29 | Brunei,BN,99.90000909
30 | Bulgaria,BG,99.10834282
31 | Burkina Faso,BF,47.88812734
32 | Burundi,BI,60.83054892
33 | Cambodia,KH,78.51065693
34 | Cameroon,CM,60.38486395
35 | Canada,CA,99.43624408
36 | Cape Verde,CV,87.08320801
37 | Cayman Is.,KY,96.125
38 | Central African Rep.,CF,46.33375843
39 | Chad,TD,38.70059943
40 | Chile,CL,99.8327912
41 | China,CN,92.84613551
42 | Colombia,CO,97.30010961
43 | Comoros,KM,80.16751687
44 | Congo,CG,73.21776097
45 | Costa Rica,CR,99.70151391
46 | Côte d'Ivoire,CI,72.86894644
47 | Croatia,HR,99.58666656
48 | Cuba,CU,95.32758231
49 | Curaçao,CW,99.49775185
50 | Cyprus,CY,99.61328615
51 | Czech Rep.,CZ,99.8802588
52 | Dem. Rep. Congo,CD,43.24332204
53 | Dem. Rep. Korea,KP,94.51245282
54 | Denmark,DK,99.99999894
55 | Djibouti,DJ,75.63230768
56 | Dominica,DM,96.5
57 | Dominican Rep.,DO,96.69022475
58 | Ecuador,EC,93.99453654
59 | Egypt,EG,99.10573046
60 | El Salvador,SV,97.38837497
61 | Eq. Guinea,GQ,64.66581781
62 | Eritrea,ER,51.84971842
63 | Estonia,EE,99.71282684
64 | Ethiopia,ET,41.05995213
65 | Fiji,FJ,93.79091928
66 | Finland,FI,100
67 | France,FR,100
68 | Gabon,GA,85.77100366
69 | Gambia,GM,77.99156682
70 | Georgia,GE,98.39443935
71 | Germany,DE,100
72 | Ghana,GH,81.45338968
73 | Greece,GR,100
74 | Greenland,GL,99.99999747
75 | Grenada,GD,95.62865044
76 | Guam,GU,99.6952
77 | Guatemala,GT,94.19058074
78 | Guinea,GN,61.89872308
79 | Guinea-Bissau,GW,66.63441423
80 | Guyana,GY,95.53974768
81 | Haiti,HT,65.46682593
82 | Honduras,HN,94.82710944
83 | Hong Kong,HK,100
84 | Hungary,HU,99.99999749
85 | Iceland,IS,99.99999943
86 | India,IN,92.67464257
87 | Indonesia,ID,89.34401223
88 | Iran,IR,95.24454488
89 | Iraq,IQ,96.53347833
90 | Ireland,IE,97.39454461
91 | Isle of Man,IM,99.075
92 | Israel,IL,100
93 | Italy,IT,99.44273388
94 | Jamaica,JM,90.64843618
95 | Japan,JP,99.01020833
96 | Jordan,JO,98.93722265
97 | Kazakhstan,KZ,95.62750722
98 | Kenya,KE,58.91633339
99 | Korea,KR,99.787655
100 | Kuwait,KW,100
101 | Kyrgyzstan,KG,87.4559029
102 | Lao PDR,LA,82.06189686
103 | Latvia,LV,98.62618237
104 | Lebanon,LB,92.6
105 | Lesotho,LS,68.64993758
106 | Liberia,LR,72.94803095
107 | Libya,LY,98.52894737
108 | Liechtenstein,LI,100
109 | Lithuania,LT,97.5420681
110 | Luxembourg,LU,99.88960319
111 | Macao,MO,100
112 | Macedonia,MK,93.14146285
113 | Madagascar,MG,54.40398164
114 | Malawi,MW,68.83187676
115 | Malaysia,MY,96.69593891
116 | Mali,ML,78.26082958
117 | Malta,MT,100
118 | Mauritania,MR,70.69618765
119 | Mexico,MX,99.31821889
120 | Moldova,MD,89.05565265
121 | Monaco,MC,100
122 | Mongolia,MN,83.31311501
123 | Montenegro,ME,97.04205011
124 | Morocco,MA,86.77851266
125 | Mozambique,MZ,55.69397562
126 | Myanmar,MM,81.77404853
127 | Namibia,NA,82.54109887
128 | Nauru,NR,99.48493442
129 | Nepal,NP,88.81224952
130 | Netherlands,NL,99.99999928
131 | New Caledonia,NC,99.32859759
132 | New Zealand,NZ,100
133 | Nicaragua,NI,81.52476354
134 | Niger,NE,50.27306506
135 | Nigeria,NG,71.3766307
136 | Norway,NO,100
137 | Oman,OM,91.93807842
138 | Pakistan,PK,91.46545073
139 | Panama,PA,96.38241895
140 | Papua New Guinea,PG,41.32704942
141 | Paraguay,PY,99.61019773
142 | Peru,PE,91.12787097
143 | Philippines,PH,93.56837604
144 | Poland,PL,99.72468254
145 | Portugal,PT,99.90766021
146 | Puerto Rico,PR,97.12479066
147 | Qatar,QA,99.56810194
148 | Romania,RO,100
149 | Russia,RU,97.0899112
150 | Rwanda,RW,57.71327853
151 | S. Sudan,SS,40.67601215
152 | Saint Lucia,LC,98.16200142
153 | Samoa,WS,97.38259524
154 | San Marino,SM,100
155 | São Tomé and Principe,ST,84.29015993
156 | Saudi Arabia,SA,100
157 | Senegal,SN,80.67785387
158 | Serbia,RS,85.52211629
159 | Sierra Leone,SL,60.80698694
160 | Singapore,SG,100
161 | Sint Maarten,SX,95.07411955
162 | Slovakia,SK,99.78773411
163 | Slovenia,SI,99.53502551
164 | Solomon Is.,SB,67.77595721
165 | Somalia,SO,52.43618907
166 | South Africa,ZA,92.67870194
167 | Spain,ES,99.92627831
168 | Sri Lanka,LK,89.41629243
169 | St. Vin. and Gren.,VC,95.1452199
170 | Sudan,SD,60.26709116
171 | Suriname,SR,95.42474497
172 | Sweden,SE,100
173 | Switzerland,CH,100
174 | Syria,SY,97.21650621
175 | Tajikistan,TJ,81.1962748
176 | Tanzania,TZ,56.72645032
177 | Thailand,TH,99.93071158
178 | Timor-Leste,TP,78.34386574
179 | Togo,TG,65.12884019
180 | Tonga,TO,99.90682775
181 | Trinidad and Tobago,TT,98.18496206
182 | Tunisia,TN,96.25470364
183 | Turkey,TR,98.87571815
184 | Turkmenistan,TM,98.81432798
185 | Turks and Caicos Is.,TC,94.31818182
186 | U.S. Virgin Is.,VI,98.71826738
187 | Uganda,UG,49.10403239
188 | Ukraine,UA,93.79082011
189 | United Arab Emirates,AE,98.04550656
190 | United Kingdom,GB,100
191 | United States,US,99.26919207
192 | Uruguay,UY,99.4023635
193 | Uzbekistan,UZ,97.83345271
194 | Vanuatu,VU,91.25680395
195 | Venezuela,VE,95.72371132
196 | Vietnam,VN,94.71880561
197 | Yemen,YE,63.47347434
198 | Zambia,ZM,59.96375651
199 | Zimbabwe,ZW,64.0512297
--------------------------------------------------------------------------------
/examples/public/resources/stepData17-18.csv:
--------------------------------------------------------------------------------
1 | Date,Actual,Goal
2 | 1/1/2017,,
3 | 1/2/2017,,
4 | 1/3/2017,1500,7500
5 | 1/4/2017,3850,7125
6 | 1/5/2017,3540,6768
7 | 1/6/2017,2712,6429
8 | 1/7/2017,2511,6429
9 | 1/8/2017,1262,6107
10 | 1/9/2017,2099,5801
11 | 1/10/2017,2579,5510
12 | 1/11/2017,1572,5234
13 | 1/12/2017,1488,4972
14 | 1/13/2017,2677,4947
15 | 1/14/2017,1057,4922
16 | 1/15/2017,1552,4897
17 | 1/16/2017,2249,4872
18 | 1/17/2017,1180,4847
19 | 1/18/2017,1790,4822
20 | 1/19/2017,2156,4797
21 | 1/20/2017,2128,4773
22 | 1/21/2017,8531,4749
23 | 1/22/2017,1333,5033
24 | 1/23/2017,1580,4848
25 | 1/24/2017,2283,4823
26 | 1/25/2017,661,4798
27 | 1/26/2017,3373,4774
28 | 1/27/2017,2199,4750
29 | 1/28/2017,1307,4726
30 | 1/29/2017,2276,4702
31 | 1/30/2017,2011,4678
32 | 1/31/2017,1928,4654
33 | 2/1/2017,2003,4630
34 | 2/2/2017,3178,4606
35 | 2/3/2017,1763,4582
36 | 2/4/2017,3046,4559
37 | 2/5/2017,2120,4536
38 | 2/6/2017,4585,4513
39 | 2/7/2017,3767,4535
40 | 2/8/2017,2510,4512
41 | 2/9/2017,3116,4489
42 | 2/10/2017,2498,4466
43 | 2/11/2017,3692,4443
44 | 2/12/2017,3306,4420
45 | 2/13/2017,1297,4397
46 | 2/14/2017,2196,4375
47 | 2/15/2017,4167,4353
48 | 2/16/2017,3518,4331
49 | 2/17/2017,1894,4309
50 | 2/18/2017,3215,4287
51 | 2/19/2017,3421,4265
52 | 2/20/2017,3070,4243
53 | 2/21/2017,3549,4221
54 | 2/22/2017,2750,4199
55 | 2/23/2017,2379,4178
56 | 2/24/2017,351,4157
57 | 2/25/2017,9481,4157
58 | 2/26/2017,4538,4406
59 | 2/27/2017,2548,4439
60 | 2/28/2017,3152,4416
61 | 3/1/2017,2380,4393
62 | 3/2/2017,2033,4371
63 | 3/3/2017,1983,4349
64 | 3/4/2017,13,4327
65 | 3/5/2017,0,4327
66 | 3/6/2017,2735,4327
67 | 3/7/2017,2383,4305
68 | 3/8/2017,3053,4283
69 | 3/9/2017,4784,4261
70 | 3/10/2017,3795,4391
71 | 3/11/2017,433,4369
72 | 3/12/2017,469,4369
73 | 3/13/2017,1623,4347
74 | 3/14/2017,315,4325
75 | 3/15/2017,1861,4325
76 | 3/16/2017,2095,4303
77 | 3/17/2017,1362,4281
78 | 3/18/2017,2928,4259
79 | 3/19/2017,1897,4237
80 | 3/20/2017,2112,4215
81 | 3/21/2017,4625,4193
82 | 3/22/2017,2419,4301
83 | 3/23/2017,590,4279
84 | 3/24/2017,1015,4279
85 | 3/25/2017,2660,4257
86 | 3/26/2017,3005,4235
87 | 3/27/2017,3526,4213
88 | 3/28/2017,3773,4191
89 | 3/29/2017,2503,4170
90 | 3/30/2017,3481,4149
91 | 3/31/2017,2333,4128
92 | 4/1/2017,50,4107
93 | 4/2/2017,1240,4107
94 | 4/3/2017,3503,4086
95 | 4/4/2017,3663,4065
96 | 4/5/2017,2750,4044
97 | 4/6/2017,2803,4023
98 | 4/7/2017,2535,4002
99 | 4/8/2017,2493,3981
100 | 4/9/2017,3901,3961
101 | 4/10/2017,973,3941
102 | 4/11/2017,5842,3921
103 | 4/12/2017,2114,4156
104 | 4/13/2017,2219,4135
105 | 4/14/2017,4411,4114
106 | 4/15/2017,2253,4188
107 | 4/16/2017,2388,4167
108 | 4/17/2017,2934,4146
109 | 4/18/2017,4269,4125
110 | 4/19/2017,4081,4161
111 | 4/20/2017,2321,4157
112 | 4/21/2017,2849,4136
113 | 4/22/2017,2074,4115
114 | 4/23/2017,2634,4094
115 | 4/24/2017,4255,4073
116 | 4/25/2017,3343,4118
117 | 4/26/2017,4747,4097
118 | 4/27/2017,2484,4259
119 | 4/28/2017,2680,4237
120 | 4/29/2017,2275,4215
121 | 4/30/2017,2158,4193
122 | 5/1/2017,2023,4172
123 | 5/2/2017,2602,4151
124 | 5/3/2017,6568,4130
125 | 5/4/2017,2366,4377
126 | 5/5/2017,2286,4355
127 | 5/6/2017,1670,4333
128 | 5/7/2017,3172,4311
129 | 5/8/2017,6373,4289
130 | 5/9/2017,1381,4546
131 | 5/10/2017,1861,4523
132 | 5/11/2017,2240,4500
133 | 5/12/2017,2916,4477
134 | 5/13/2017,2263,4454
135 | 5/14/2017,2662,4431
136 | 5/15/2017,1690,4408
137 | 5/16/2017,3090,4385
138 | 5/17/2017,3753,4363
139 | 5/18/2017,2376,4341
140 | 5/19/2017,2955,4319
141 | 5/20/2017,1371,4319
142 | 5/21/2017,1791,4297
143 | 5/22/2017,1830,4275
144 | 5/23/2017,1681,4253
145 | 5/24/2017,3139,4231
146 | 5/25/2017,3110,4209
147 | 5/26/2017,1540,4187
148 | 5/27/2017,3976,4166
149 | 5/28/2017,8090,4145
150 | 5/29/2017,4821,4393
151 | 5/30/2017,5181,4500
152 | 5/31/2017,5745,4670
153 | 6/1/2017,5479,4938
154 | 6/2/2017,5259,5073
155 | 6/3/2017,2749,5119
156 | 6/4/2017,1226,5000
157 | 6/5/2017,9985,5000
158 | 6/6/2017,10535,5299
159 | 6/7/2017,8659,5616
160 | 6/8/2017,9028,5952
161 | 6/9/2017,16761,6309
162 | 6/10/2017,6610,6687
163 | 6/11/2017,2164,6683
164 | 6/12/2017,2289,6348
165 | 6/13/2017,4421,6030
166 | 6/14/2017,4638,5728
167 | 6/15/2017,3290,5441
168 | 6/16/2017,2709,5168
169 | 6/17/2017,2551,4909
170 | 6/18/2017,2308,4884
171 | 6/19/2017,4506,4859
172 | 6/20/2017,3591,4834
173 | 6/21/2017,5648,4809
174 | 6/22/2017,9163,5018
175 | 6/23/2017,6550,5319
176 | 6/24/2017,3950,5626
177 | 6/25/2017,3586,5542
178 | 6/26/2017,5305,5264
179 | 6/27/2017,5390,5290
180 | 6/28/2017,4260,5316
181 | 6/29/2017,8556,5263
182 | 6/30/2017,4439,5578
183 | 7/1/2017,4758,5521
184 | 7/2/2017,8561,5253
185 | 7/3/2017,4736,5568
186 | 7/4/2017,5146,5526
187 | 7/5/2017,2171,5393
188 | 7/6/2017,1878,5393
189 | 7/7/2017,2347,5123
190 | 7/8/2017,6653,4866
191 | 7/9/2017,3692,5157
192 | 7/10/2017,2062,5083
193 | 7/11/2017,4352,4828
194 | 7/12/2017,5514,4803
195 | 7/13/2017,5949,4980
196 | 7/14/2017,7423,5222
197 | 7/15/2017,15394,5535
198 | 7/16/2017,9430,5867
199 | 7/17/2017,4795,6219
200 | 7/18/2017,4802,6147
201 | 7/19/2017,6233,5839
202 | 7/20/2017,1955,5937
203 | 7/21/2017,5597,5737
204 | 7/22/2017,4136,5688
205 | 7/23/2017,2045,5403
206 | 7/24/2017,6030,5132
207 | 7/25/2017,6122,5356
208 | 7/26/2017,5325,5547
209 | 7/27/2017,5777,5535
210 | 7/28/2017,6052,5595
211 | 7/29/2017,5337,5709
212 | 7/30/2017,5166,5690
213 | 7/31/2017,4913,5506
214 | 8/1/2017,6568,5298
215 | 8/2/2017,7344,5615
216 | 8/3/2017,6158,5951
217 | 8/4/2017,3839,6002
218 | 8/5/2017,3928,6002
219 | 8/6/2017,7310,5898
220 | 8/7/2017,4551,6251
221 | 8/8/2017,5809,6166
222 | 8/9/2017,7765,6041
223 | 8/10/2017,6371,6403
224 | 8/11/2017,6650,6401
225 | 8/12/2017,5060,6463
226 | 8/13/2017,11972,6463
227 | 8/14/2017,6251,6850
228 | 8/15/2017,6600,6820
229 | 8/16/2017,1891,6743
230 | 8/17/2017,3229,6405
231 | 8/18/2017,5688,6084
232 | 8/19/2017,3249,5945
233 | 8/20/2017,4364,5647
234 | 8/21/2017,5602,5364
235 | 8/22/2017,5590,5423
236 | 8/23/2017,6094,5464
237 | 8/24/2017,3078,5621
238 | 8/25/2017,5359,5500
239 | 8/26/2017,3170,5450
240 | 8/27/2017,1096,5180
241 | 8/28/2017,6610,4930
242 | 8/29/2017,7558,5230
243 | 8/30/2017,6242,5550
244 | 8/31/2017,6796,5730
245 | 9/1/2017,6701,6000
246 | 9/2/2017,7173,6180
247 | 9/3/2017,13567,6430
248 | 9/4/2017,7074,6820
249 | 9/5/2017,5486,6890
250 | 9/6/2017,6793,6820
251 | 9/7/2017,6598,6810
252 | 9/8/2017,6850,6740
253 | 9/9/2017,2272,6780
254 | 9/10/2017,5876,6560
255 | 9/11/2017,6317,6320
256 | 9/12/2017,5801,6320
257 | 9/13/2017,4603,6140
258 | 9/14/2017,4890,5840
259 | 9/15/2017,5735,5550
260 | 9/16/2017,7111,5600
261 | 9/17/2017,7967,5940
262 | 9/18/2017,5513,6300
263 | 9/19/2017,5225,6260
264 | 9/20/2017,6120,5950
265 | 9/21/2017,5736,6000
266 | 9/22/2017,5912,5990
267 | 9/23/2017,1392,5970
268 | 9/24/2017,4498,5680
269 | 9/25/2017,2265,5400
270 | 9/26/2017,4204,5130
271 | 9/27/2017,5708,4880
272 | 9/28/2017,5150,5090
273 | 9/29/2017,6650,5120
274 | 9/30/2017,7923,5430
275 | 10/1/2017,1684,5760
276 | 10/2/2017,5201,5560
277 | 10/3/2017,5367,5440
278 | 10/4/2017,6734,5420
279 | 10/5/2017,5587,5750
280 | 10/6/2017,2813,5750
281 | 10/7/2017,9899,5470
282 | 10/8/2017,3647,5800
283 | 10/9/2017,6241,5700
284 | 10/10/2017,2789,5840
285 | 10/11/2017,6592,5690
286 | 10/12/2017,10167,5920
287 | 10/13/2017,5816,6280
288 | 10/14/2017,3095,6260
289 | 10/15/2017,7773,5950
290 | 10/16/2017,9873,6310
291 | 10/17/2017,8544,6690
292 | 10/18/2017,7676,7100
293 | 10/19/2017,6595,7250
294 | 10/20/2017,5861,7220
295 | 10/21/2017,1578,7220
296 | 10/22/2017,1866,6860
297 | 10/23/2017,4245,6520
298 | 10/24/2017,3058,6200
299 | 10/25/2017,2320,5890
300 | 10/26/2017,8169,5600
301 | 10/27/2017,5189,5940
302 | 10/28/2017,2614,5910
303 | 10/29/2017,1971,5620
304 | 10/30/2017,7309,5340
305 | 10/31/2017,6420,5660
306 | 11/1/2017,3238,5850
307 | 11/2/2017,5853,5720
308 | 11/3/2017,2825,5760
309 | 11/4/2017,2076,5620
310 | 11/5/2017,2147,5340
311 | 11/6/2017,3062,5080
312 | 11/7/2017,1355,4830
313 | 11/8/2017,886,4810
314 | 11/9/2017,5416,4790
315 | 11/10/2017,1302,4950
316 | 11/11/2017,1421,4930
317 | 11/12/2017,3101,4910
318 | 11/13/2017,1881,4890
319 | 11/14/2017,2115,4870
320 | 11/15/2017,1591,4850
321 | 11/16/2017,590,4830
322 | 11/17/2017,1907,4810
323 | 11/18/2017,7156,4790
324 | 11/19/2017,1313,5080
325 | 11/20/2017,2462,4900
326 | 11/21/2017,1601,4880
327 | 11/22/2017,2540,4860
328 | 11/23/2017,2466,4840
329 | 11/24/2017,202,4820
330 | 11/25/2017,0,4820
331 | 11/26/2017,,
332 | 11/27/2017,3578,4820
333 | 11/28/2017,3370,4800
334 | 11/29/2017,6656,4780
335 | 11/30/2017,1779,5070
336 | 12/1/2017,2482,4910
337 | 12/2/2017,1485,4890
338 | 12/3/2017,1317,4870
339 | 12/4/2017,2741,4850
340 | 12/5/2017,5030,4830
341 | 12/6/2017,3164,4880
342 | 12/7/2017,1503,4860
343 | 12/8/2017,1505,4840
344 | 12/9/2017,4063,4820
345 | 12/10/2017,4865,4800
346 | 12/11/2017,3451,4830
347 | 12/12/2017,1870,4810
348 | 12/13/2017,3623,4790
349 | 12/14/2017,5521,4790
350 | 12/15/2017,6060,4980
351 | 12/16/2017,11539,5250
352 | 12/17/2017,8065,5570
353 | 12/18/2017,8253,5910
354 | 12/19/2017,7496,6270
355 | 12/20/2017,2770,6580
356 | 12/21/2017,5247,6580
357 | 12/22/2017,1213,6520
358 | 12/23/2017,1909,6200
359 | 12/24/2017,2256,5890
360 | 12/25/2017,1988,5600
361 | 12/26/2017,1924,5320
362 | 12/27/2017,1763,5060
363 | 12/28/2017,282,4810
364 | 12/29/2017,1418,4810
365 | 12/30/2017,2838,4790
366 | 12/31/2017,3383,4770
367 | 1/1/2018,2456,4650
368 | 1/2/2018,2200,4220
369 | 1/3/2018,4786,3820
370 | 1/4/2018,3068,4670
371 | 1/5/2018,0,4670
372 | 1/6/2018,3168,4670
373 | 1/7/2018,2478,4650
374 | 1/8/2018,1622,4630
375 | 1/9/2018,3002,4610
376 | 1/10/2018,1776,4590
377 | 1/11/2018,,
378 | 1/12/2018,1605,4570
379 | 1/13/2018,3843,4550
380 | 1/14/2018,1075,4530
381 | 1/15/2018,57,4510
382 | 1/16/2018,1569,4510
383 | 1/17/2018,1887,4490
384 | 1/18/2018,1563,4470
385 | 1/19/2018,1483,4450
386 | 1/20/2018,3091,4430
387 | 1/21/2018,2231,4410
388 | 1/22/2018,2168,4390
389 | 1/23/2018,986,4370
390 | 1/24/2018,2778,4370
391 | 1/25/2018,1444,4350
392 | 1/26/2018,1167,4330
393 | 1/27/2018,1536,4310
394 | 1/28/2018,3690,4290
395 | 1/29/2018,1384,4270
396 | 1/30/2018,2387,4250
397 | 1/31/2018,756,4230
398 | 2/1/2018,1364,4230
399 | 2/2/2018,4270,4210
400 | 2/3/2018,2253,4240
401 | 2/4/2018,2351,4220
402 | 2/5/2018,2037,4200
403 | 2/6/2018,1738,4180
404 | 2/7/2018,1573,4160
405 | 2/8/2018,1008,4140
406 | 2/9/2018,4263,4120
407 | 2/10/2018,5367,4160
408 | 2/11/2018,6840,4410
409 | 2/12/2018,1753,4680
410 | 2/13/2018,1639,4660
411 | 2/14/2018,3396,4640
412 | 2/15/2018,300,4620
413 | 2/16/2018,1670,4620
414 | 2/17/2018,1340,4600
415 | 2/18/2018,2191,4580
416 | 2/19/2018,2728,4560
417 | 2/20/2018,1656,4540
418 | 2/21/2018,1890,4520
419 | 2/22/2018,873,4500
420 | 2/23/2018,1214,4500
421 | 2/24/2018,3394,4480
422 | 2/25/2018,4001,4460
423 | 2/26/2018,1733,4440
424 | 2/27/2018,953,4420
425 | 2/28/2018,1216,4400
426 | 3/1/2018,2724,4380
427 | 3/2/2018,559,4360
428 | 3/3/2018,,
429 | 3/4/2018,,
430 | 3/5/2018,1350,4360
431 | 3/6/2018,1173,4340
432 | 3/7/2018,2040,4320
433 | 3/8/2018,3752,4300
434 | 3/9/2018,1243,4280
435 | 3/10/2018,1925,4260
436 | 3/11/2018,1582,4240
437 | 3/12/2018,1340,4220
438 | 3/13/2018,337,4200
439 | 3/14/2018,1021,4200
440 | 3/15/2018,1726,4180
441 | 3/16/2018,2065,4160
442 | 3/17/2018,4097,4140
443 | 3/18/2018,1636,4130
444 | 3/19/2018,2267,4110
445 | 3/20/2018,1571,4090
446 | 3/21/2018,1336,4070
447 | 3/22/2018,1000,4050
448 | 3/23/2018,2240,4030
449 | 3/24/2018,4384,4010
450 | 3/25/2018,3887,4110
451 | 3/26/2018,1717,4100
452 | 3/27/2018,1276,4080
453 | 3/28/2018,3739,4060
454 | 3/29/2018,1409,4040
455 | 3/30/2018,149,4020
456 | 3/31/2018,3502,4020
457 | 4/1/2018,1936,4000
458 | 4/2/2018,2397,3980
459 | 4/3/2018,2488,3960
460 | 4/4/2018,1577,3940
461 | 4/5/2018,2199,3920
462 | 4/6/2018,1877,3900
463 | 4/7/2018,44,3880
464 | 4/8/2018,0,3880
465 | 4/9/2018,2839,3880
466 | 4/10/2018,2685,3860
467 | 4/11/2018,4828,3840
468 | 4/12/2018,2810,4070
469 | 4/13/2018,1284,4050
470 | 4/14/2018,3191,4030
471 | 4/15/2018,2004,4010
472 | 4/16/2018,1833,3990
473 | 4/17/2018,1720,3970
474 | 4/18/2018,1523,3950
475 | 4/19/2018,3023,3930
476 | 4/20/2018,3012,3910
477 | 4/21/2018,1610,3910
478 | 4/22/2018,1596,3890
479 | 4/23/2018,1952,3870
480 | 4/24/2018,3604,3850
481 | 4/25/2018,4491,3830
482 | 4/26/2018,2421,4000
483 | 4/27/2018,3180,3980
484 | 4/28/2018,2242,3960
485 | 4/29/2018,2215,3940
486 | 4/30/2018,1751,3920
487 | 5/1/2018,3852,3900
488 | 5/2/2018,4452,3890
489 | 5/3/2018,2680,4030
490 | 5/4/2018,3715,4010
491 | 5/5/2018,3930,3990
492 | 5/6/2018,6604,3990
493 | 5/7/2018,2750,4230
494 | 5/8/2018,7044,4210
495 | 5/9/2018,6760,4470
496 | 5/10/2018,9888,4740
497 | 5/11/2018,12647,5030
498 | 5/12/2018,3791,5340
499 | 5/13/2018,4881,5270
500 | 5/14/2018,4536,5270
501 | 5/15/2018,5399,5020
502 | 5/16/2018,3345,5120
503 | 5/17/2018,7400,5040
504 | 5/18/2018,8433,5350
505 | 5/19/2018,2602,5670
506 | 5/20/2018,552,5520
507 | 5/21/2018,2783,5250
508 | 5/22/2018,5568,4990
509 | 5/23/2018,4698,5140
510 | 5/24/2018,11471,5120
511 | 5/25/2018,7121,5430
512 | 5/26/2018,12291,5760
513 | 5/27/2018,5896,6110
514 | 5/28/2018,922,6100
515 | 5/29/2018,6736,5800
516 | 5/30/2018,5105,6040
517 | 5/31/2018,6873,6000
518 | 6/1/2018,6274,6220
519 | 6/2/2018,1987,6260
520 | 6/3/2018,5770,6050
521 | 6/4/2018,4741,4110
522 | 6/5/2018,6483,4180
523 | 6/6/2018,8651,4640
524 | 6/7/2018,6019,5450
525 | 6/8/2018,6301,5570
526 | 6/9/2018,16999,5720
527 | 6/10/2018,1823,7720
528 | 6/11/2018,2113,7130
529 | 6/12/2018,5120,6130
530 | 6/13/2018,5195,5930
531 | 6/14/2018,6483,5790
532 | 6/15/2018,6840,5860
533 | 6/16/2018,5509,6060
534 | 6/17/2018,2942,6010
535 | 6/18/2018,4394,5400
536 | 6/19/2018,5479,5200
537 | 6/20/2018,5277,5230
538 | 6/21/2018,13504,5240
539 | 6/22/2018,11973,6900
540 | 6/23/2018,15426,7920
541 | 6/24/2018,16525,9430
542 | 6/25/2018,3498,10850
543 | 6/26/2018,1913,10120
544 | 6/27/2018,1573,8480
545 | 6/28/2018,1585,7100
546 | 6/29/2018,1706,6000
547 | 6/30/2018,2835,5150
548 | 7/1/2018,1930,4690
549 | 7/2/2018,2317,4140
550 | 7/3/2018,5261,3780
551 | 7/4/2018,5930,3930
552 | 7/5/2018,5287,4330
553 | 7/6/2018,8729,4530
554 | 7/7/2018,1233,5370
555 | 7/8/2018,3412,4960
556 | 7/9/2018,2456,4650
557 | 7/10/2018,2200,4220
558 | 7/11/2018,4786,3820
559 |
--------------------------------------------------------------------------------
/examples/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
11 |
12 |
13 |
20 | {{ item.name }}
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
89 |
90 |
142 |
--------------------------------------------------------------------------------
/examples/src/assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jscharting/jscharting-vue/9c1f4a8ba8e0e8d3c15c084bad65900468da87fa/examples/src/assets/logo.png
--------------------------------------------------------------------------------
/examples/src/components/calendarHeatmap.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
54 |
--------------------------------------------------------------------------------
/examples/src/components/chartDash.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
15 |
16 |
17 |
18 |
159 |
160 |
199 |
--------------------------------------------------------------------------------
/examples/src/components/chartDataGrid.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | With one setting, you can provide a datagrid representation of your
5 | charts.
6 |
7 |
11 |
12 |
13 |
14 |
52 |
--------------------------------------------------------------------------------
/examples/src/components/circularColorBar.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
111 |
--------------------------------------------------------------------------------
/examples/src/components/circularGauge.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
81 |
--------------------------------------------------------------------------------
/examples/src/components/dataGrid.vue:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
11 |
41 |
--------------------------------------------------------------------------------
/examples/src/components/interactiveLine.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
Two way selection binding. Use dropdown or hover a series line.
4 |
5 | Selected:
6 |
7 | {{ ser.name }}
8 |
9 |
10 |
11 |
18 |
19 |
20 |
21 |
154 |
--------------------------------------------------------------------------------
/examples/src/components/liveData.vue:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
118 |
--------------------------------------------------------------------------------
/examples/src/components/mapChoropleth.vue:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
13 |
14 |
15 |
107 |
--------------------------------------------------------------------------------
/examples/src/components/masterDetail.vue:
--------------------------------------------------------------------------------
1 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
149 |
--------------------------------------------------------------------------------
/examples/src/components/methodUpdate.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Update Chart Data
5 |
6 |
7 |
8 |
69 |
--------------------------------------------------------------------------------
/examples/src/components/microchartFast.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | The JSCLabel chart is a simple string based generator that creates simple
5 | SVG charts very quickly.
6 |
7 |
8 | This chart is created with the string
9 | <chart type="column" data=12,23,... width=800 height=300>
10 |
11 |
12 | Microchart string reference:
13 | MicroCharts
16 |
17 |
18 |
19 |
20 |
21 |
64 |
--------------------------------------------------------------------------------
/examples/src/components/simpleLine.vue:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
11 |
127 |
--------------------------------------------------------------------------------
/examples/src/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue';
2 | import App from './App.vue';
3 |
4 | Vue.config.productionTip = false;
5 |
6 | new Vue({
7 | render: h => h(App)
8 | }).$mount('#app');
9 |
--------------------------------------------------------------------------------
/examples/vue.config.js:
--------------------------------------------------------------------------------
1 | const CopyWebpackPlugin = require('copy-webpack-plugin');
2 | const path = require('path');
3 |
4 | module.exports = {
5 | publicPath: process.env.NODE_ENV === 'production'
6 | ? '/my-project/'
7 | : '/',
8 | configureWebpack: {
9 | plugins: [
10 | new CopyWebpackPlugin([
11 | {
12 | from: path.join(__dirname, 'node_modules/jscharting/dist/'),
13 | to: path.join(__dirname, 'dist/assets/jscharting/'),
14 | ignore: ['jscharting.*']
15 | }
16 | ])
17 | ]
18 | }
19 | };
20 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jscharting-vue",
3 | "version": "2.4.0",
4 | "description": "JSCharting plugin for Vue.js",
5 | "homepage": "https://jscharting.com/",
6 | "author": "JSCharting (https://jscharting.com/support.htm)",
7 | "bugs": {
8 | "email": "support@jscharting.com"
9 | },
10 | "license": "jscharting.com/store/",
11 | "main": "./src/main.js",
12 | "typings": "types/jscharting-vue.d.ts",
13 | "scripts": {
14 | "build-examples": "cd examples && npm install && npm run build",
15 | "build-examples-vue3": "cd examples-vue3 && npm install && npm run build",
16 | "serve-examples": "cd examples && npm install && npm run serve",
17 | "serve-examples-vue3": "cd examples-vue3 && npm install && npm run serve",
18 | "lint": "eslint src/components/** scripts/** ",
19 | "format": "prettier --config ./.prettierrc.js --write src/**/*.vue tests/** scripts/**",
20 | "postinstall": "node ./scripts/postinstall.js",
21 | "test": "jest"
22 | },
23 | "jest": {
24 | "moduleFileExtensions": [
25 | "js",
26 | "json",
27 | "vue"
28 | ],
29 | "transform": {
30 | "^.+\\.js$": "/node_modules/babel-jest",
31 | ".*\\.(vue)$": "/node_modules/vue-jest"
32 | },
33 | "moduleNameMapper": {
34 | "^@/(.*)$": "/src/components/$1"
35 | }
36 | },
37 | "dependencies": {
38 | "jscharting": "^3.4.0"
39 | },
40 | "devDependencies": {
41 | "@babel/core": "^7.16.5",
42 | "@babel/preset-env": "^7.8.3",
43 | "@vue/cli-plugin-babel": "~4.5.0",
44 | "@vue/cli-plugin-eslint": "^4.1.0",
45 | "@vue/cli-plugin-typescript": "~4.5.0",
46 | "@vue/cli-service": "~4.5.0",
47 | "@vue/compiler-sfc": "^3.0.7",
48 | "@vue/test-utils": "^1.0.0-beta.31",
49 | "babel-core": "^7.0.0-bridge.0",
50 | "babel-eslint": "^10.0.3",
51 | "core-js": "^3.4.3",
52 | "eslint": "^5.16.0",
53 | "eslint-plugin-vue": "^5.0.0",
54 | "jest": "^25.1.0",
55 | "prettier": "^1.19.1",
56 | "vue": "^2.6.10",
57 | "vue-jest": "^3.0.5",
58 | "vue-template-compiler": "^2.6.10"
59 | },
60 | "peerDependencies": {
61 | "vue": "^2.6.10 || >=3.0.5"
62 | },
63 | "eslintConfig": {
64 | "root": true,
65 | "env": {
66 | "node": true,
67 | "jest": true
68 | },
69 | "extends": [
70 | "plugin:vue/essential",
71 | "eslint:recommended"
72 | ],
73 | "rules": {},
74 | "parserOptions": {
75 | "parser": "babel-eslint"
76 | }
77 | },
78 | "browserslist": [
79 | "> 1%",
80 | "last 2 versions"
81 | ],
82 | "repository": {
83 | "type": "git",
84 | "url": "git+https://github.com/jscharting/jscharting-vue.git"
85 | },
86 | "keywords": [
87 | "charts",
88 | "dataviz",
89 | "graphs",
90 | "visualization",
91 | "javascript-chart",
92 | "javascript",
93 | "vuejs",
94 | "vue"
95 | ],
96 | "files": [
97 | "src/",
98 | "types/",
99 | "scripts/",
100 | "*.md",
101 | "babel.config.js",
102 | ".travis.yml"
103 | ]
104 | }
105 |
--------------------------------------------------------------------------------
/scripts/postinstall.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable no-console */
2 | console.log('POST INSTALL');
3 | const fs = require('fs');
4 | const path = require('path');
5 | const dir = path.resolve(__dirname, '..', 'src/components');
6 |
7 | function loadModule(name) {
8 | try {
9 | return require(name);
10 | } catch (e) {
11 | return undefined;
12 | }
13 | }
14 |
15 | const Vue = loadModule('vue');
16 |
17 | if (!Vue || typeof Vue.version !== 'string') {
18 | console.warn(
19 | '[jscharting-vue] Vue is not found. Please run "npm install vue" to install.'
20 | );
21 | } else if (Vue.version.startsWith('3.')) {
22 | // read files from component directory
23 | const files = fs.readdirSync(dir);
24 | files.forEach(file => {
25 | const readFile = fs.readFileSync(path.join(dir, file), 'utf8');
26 |
27 | // replace beforeDestroy lifecycle hook with beforeUnmount
28 | const newFile = readFile.replace(/beforeDestroy/g, 'beforeUnmount');
29 | fs.writeFileSync(path.join(dir, file), newFile, 'utf8');
30 | });
31 | } else if (!Vue.version.startsWith('2.')) {
32 | console.warn(
33 | `[jscharting-vue] Vue version v${Vue.version} is not suppported.`
34 | );
35 | }
36 |
--------------------------------------------------------------------------------
/src/assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jscharting/jscharting-vue/9c1f4a8ba8e0e8d3c15c084bad65900468da87fa/src/assets/logo.png
--------------------------------------------------------------------------------
/src/components/jscgrid.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
48 |
--------------------------------------------------------------------------------
/src/components/jscharting.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
72 |
--------------------------------------------------------------------------------
/src/components/jsclabel.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
36 |
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | import JSCharting from './components/jscharting.vue';
2 | import JSCLabel from './components/jsclabel.vue';
3 | import JSCGrid from './components/jscgrid.vue';
4 | import * as JSC from 'jscharting';
5 |
6 | export default JSCharting;
7 | export { JSCharting, JSCLabel, JSCGrid, JSC };
8 |
--------------------------------------------------------------------------------
/tests/jscgrid.test.js:
--------------------------------------------------------------------------------
1 | import { mount } from '@vue/test-utils';
2 | import { JSCGrid } from '../src/main';
3 |
4 | describe('JSCGrid unit tests', () => {
5 | const wrapper = mount(JSCGrid, {
6 | propsData: {
7 | options: {
8 | className: 'jscTable',
9 | data: [
10 | ['Art', 5, 10],
11 | ['Greg', 3, 6],
12 | ['Olivia', 11, 8],
13 | ['Steve', 11, 4],
14 | ['Anna', 3, 8]
15 | ]
16 | }
17 | }
18 | });
19 |
20 | test('Wrapper is a Vue instance', () => {
21 | expect(wrapper.exists()).toBeTruthy();
22 | });
23 |
24 | test('Grid should be destroyed after component is destroyed.', () => {
25 | wrapper.destroy();
26 | expect(wrapper.element.innerHTML === '').toBeTruthy();
27 | });
28 | });
29 |
--------------------------------------------------------------------------------
/tests/jscharting.test.js:
--------------------------------------------------------------------------------
1 | import { mount } from '@vue/test-utils';
2 | import { JSCharting } from '../src/main';
3 |
4 | const propsData = {
5 | options: {
6 | series: [
7 | {
8 | points: [
9 | {
10 | x: 0,
11 | y: 1
12 | },
13 | {
14 | x: 1,
15 | y: 2
16 | }
17 | ]
18 | }
19 | ]
20 | }
21 | };
22 |
23 | describe('JSCharting unit tests', () => {
24 | const wrapper = mount(JSCharting, { propsData });
25 | const chart = wrapper.vm.instance;
26 |
27 | test('Wrapper is a Vue instance', () => {
28 | expect(wrapper.exists()).toBeTruthy();
29 | });
30 |
31 | test('Component has JSCharting instance', () => {
32 | expect(chart).not.toBeUndefined();
33 | });
34 |
35 | test('Chart data is set correctly', () => {
36 | expect(chart.options('series')[0].points[0].x).toBe(0);
37 | expect(chart.options('series')[0].points[0].y).toBe(1);
38 | expect(chart.options('series')[0].points[1].x).toBe(1);
39 | expect(chart.options('series')[0].points[1].y).toBe(2);
40 | });
41 |
42 | test('Rendered event should be invoked.', () => {
43 | expect(wrapper.emitted().rendered).toBeTruthy();
44 | });
45 |
46 | test('Chart should be destroyed after component is unmounted.', () => {
47 | wrapper.destroy();
48 | expect(wrapper.vm.instance).toBeUndefined();
49 | });
50 | });
51 |
--------------------------------------------------------------------------------
/tests/jsclabel.test.js:
--------------------------------------------------------------------------------
1 | import { mount } from '@vue/test-utils';
2 | import { JSCLabel } from '../src/main';
3 |
4 | describe('JSCLabel unit tests', () => {
5 | const wrapper = mount(JSCLabel, {
6 | propsData: { options: 'JSCLabel test string ' }
7 | });
8 | const element = wrapper.element;
9 |
10 | test('Wrapper is a Vue instance', () => {
11 | expect(wrapper.exists()).toBeTruthy();
12 | });
13 |
14 | test('Label data is set correctly', () => {
15 | let renderedString =
16 | 'JSCLabel test string ';
17 | expect(element.innerHTML.indexOf(renderedString) > -1).toBeTruthy();
18 | });
19 |
20 | test('Label should be destroyed after component is destroyed.', () => {
21 | wrapper.destroy();
22 | expect(wrapper.element.innerHTML === '').toBeTruthy();
23 | });
24 | });
25 |
--------------------------------------------------------------------------------
/types/jscharting-vue.d.ts:
--------------------------------------------------------------------------------
1 | import Vue, {WatchOptionsWithHandler} from 'vue'
2 | import * as JSC from 'jscharting';
3 |
4 | export interface ChartWatchObject {
5 | options: WatchOptionsWithHandler;
6 | }
7 |
8 | // Chart
9 | export interface ChartPropsObject {
10 | options: JSC.JSCChartConfig;
11 | mutable?: boolean;
12 | ignoreStateUpdate?: boolean;
13 | }
14 |
15 | export default class JSCharting extends Vue {
16 | props: ChartPropsObject;
17 | template: string;
18 | watch: ChartWatchObject;
19 | beforeDestroy: () => void;
20 | mounted: () => void;
21 | createChart: () => void;
22 | destroyChart: () => void;
23 | instance?: JSC.Chart;
24 |
25 | }
26 |
27 | // Grid
28 | export interface GridPropsObject {
29 | options: JSC.JSCGridConfig;
30 | mutable?: boolean;
31 | }
32 |
33 | export class JSCGrid extends Vue {
34 | props: GridPropsObject;
35 | template: string;
36 | watch: ChartWatchObject;
37 | beforeDestroy: () => void;
38 | mounted: () => void;
39 | renderGrid: () => void;
40 | destroyGrid: () => void;
41 |
42 | }
43 |
44 | // Label
45 | export interface LabelPropsObject {
46 | options: string;
47 | }
48 |
49 | export class JSCLabel extends Vue {
50 | props: LabelPropsObject;
51 | template: string;
52 | watch: ChartWatchObject;
53 | beforeDestroy: () => void;
54 | mounted: () => void;
55 | renderGrid: () => void;
56 | destroyGrid: () => void;
57 |
58 | }
59 |
60 | export {JSC as JSC};
61 |
62 |
--------------------------------------------------------------------------------
/vue.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | configureWebpack: {
3 | externals: {
4 | jscharting: 'jscharting'
5 | }
6 | }
7 | };
8 |
--------------------------------------------------------------------------------