diff --git a/README.md b/README.md index 6eb8c143..bce6db43 100644 --- a/README.md +++ b/README.md @@ -71,18 +71,6 @@ Vue.component('line-chart', { }) ``` - -### Browserify / Webpack 1 - -If you're using Gulp, Browserify or Webpack 1 the entry is `vue-chartjs.js` which is __transpiled__ and __bundled__ UMD Module. - -However, Chart.js is a `peerDependencies` so you have to install it separately. In most projects This way, you can have different versions of Chart.js then in this package. - -### Webpack 2 -If you're using Webpack 2 it will automatically use the `jsnext:main` / `module` entry point. Which is `es/index.js` -It is a __transpiled__ es version of the source. And is not __bundled__ to a module. This way your tree shaking will work. Like in the bundled version, `Chart.js` is a `peerDependencies` and need to be installed. - - ## How to use You need to import the component and then either use `extends` or `mixins` and add it. diff --git a/docs/README.md b/docs/README.md index 954404f0..b84abd98 100644 --- a/docs/README.md +++ b/docs/README.md @@ -99,14 +99,14 @@ export default { After you add your component you can use it: ```html - + ``` If you want to overwrite width and height: ```html

Barchart

- +

Horizontal Barchart

- +

Barchart with reactive mixing for live data

- +

Barchart with reactive mixing for live data as props

- +

Linechart

- +

Doughnutchart

- +

Piechart

- +

Radarchart

- +

Polararea

- +

Bubblechart

- +

Scatter Chart

- + +
+
+

Custom Line Chart

+
@@ -69,12 +73,14 @@ import ReactivePropExample from './ReactivePropExample' import ScatterExample from './ScatterExample' import HorizontalBarExample from './HorizontalBarExample' + import CustomLine from './CustomExample' export default { components: { BarExample, LineExample, DoughnutExample, + CustomLine, PieExample, RadarExample, PolarAreaExample, diff --git a/src/examples/CustomExample.js b/src/examples/CustomExample.js new file mode 100644 index 00000000..25d79def --- /dev/null +++ b/src/examples/CustomExample.js @@ -0,0 +1,51 @@ +import Chart from 'chart.js' +import { generateChart } from '../BaseCharts' + +Chart.defaults.LineWithLine = Chart.defaults.line +Chart.controllers.LineWithLine = Chart.controllers.line.extend({ + draw: function (ease) { + Chart.controllers.line.prototype.draw.call(this, ease) + + if (this.chart.tooltip._active && this.chart.tooltip._active.length) { + let activePoint = this.chart.tooltip._active[0] + let ctx = this.chart.ctx + let x = activePoint.tooltipPosition().x + let topY = this.chart.scales['y-axis-0'].top + let bottomY = this.chart.scales['y-axis-0'].bottom + + // draw line + ctx.save() + ctx.beginPath() + ctx.moveTo(x, topY) + ctx.lineTo(x, bottomY) + ctx.lineWidth = 2 + ctx.strokeStyle = '#07C' + ctx.stroke() + ctx.restore() + } + } +}) + +const LineWithLine = generateChart('line-with-chart', 'LineWithLine') + +export default { + extends: LineWithLine, + mounted () { + this.renderChart({ + labels: ['January', 'February', 'March', 'April', 'May', 'June', 'July'], + datasets: [ + { + label: 'Data One', + backgroundColor: '#f87979', + data: [40, 39, 10, 40, 39, 80, 40] + } + ] + }, { + responsive: true, + maintainAspectRatio: false, + tooltips: { + intersect: false + } + }) + } +}