• Stars
    star
    115
  • Rank 305,916 (Top 7 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created almost 8 years ago
  • Updated about 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

The Component of Vue 2.x for highcharts

Travis npm npm npm

vue-highcharts

The component of Vue 2.0 for highcharts

中文 README

Check the Demo or Demo On CodeSanbox

Installation

npm

make sure you have installed highcharts.js.

npm install vue2-highcharts --save

Usage

Using ES6 Module in the component with load async data

<template>
  <div>
    <vue-highcharts :options="options" ref="lineCharts"></vue-highcharts>
    <button @click="load">load</button>
  </div>
</template>

<script>
import VueHighcharts from 'vue2-highcharts'
const asyncData = {
  name: 'Tokyo',
  marker: {
    symbol: 'square'
  },
  data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, {
    y: 26.5,
    marker: {
      symbol: 'url(http://www.highcharts.com/demo/gfx/sun.png)'
    }
  }, 23.3, 18.3, 13.9, 9.6]
}
export default{
    components: {
        VueHighcharts
    },
    data(){
      return{
        options: {
          chart: {
            type: 'spline'
          },
          title: {
            text: 'Monthly Average Temperature'
          },
          subtitle: {
            text: 'Source: WorldClimate.com'
          },
          xAxis: {
            categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',
              'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
          },
          yAxis: {
            title: {
              text: 'Temperature'
            },
            labels: {
              formatter: function () {
                return this.value + '°';
              }
            }
          },
          tooltip: {
            crosshairs: true,
            shared: true
          },
          credits: {
            enabled: false
          },
          plotOptions: {
            spline: {
              marker: {
                radius: 4,
                lineColor: '#666666',
                lineWidth: 1
              }
            }
          },
          series: []
        }
      }
    },
    methods: {
      load(){
          let lineCharts = this.$refs.lineCharts;
          lineCharts.delegateMethod('showLoading', 'Loading...');
          setTimeout(() => {
              lineCharts.addSeries(asyncData);
              lineCharts.hideLoading();
          }, 2000)
      }
    }
}
</script>

you can get the chart instance by this.$refs.lineCharts

And using the methods of Highchart with delegateMethod()

If you want to use Highstock, Highmaps or any other add-ons, you should load add-ons as a module.

Load Drilldown module

import Exporting from 'highcharts/modules/Exporting.js'
import Drilldown from 'highcharts/modules/Drilldown.js'
import Highcharts from 'highcharts'
// Load Drilldown module
Drilldown(Highcharts);
// Load Exporting module
Exporting(Highcharts);
<vue-highcharts :highcharts="Highcharts" :options="drilldownOptions" ref="drilldownChart"></vue-highcharts>

you can ses Highcharts docs - Install from npm

Using with Nuxt.js

In Nuxt.js use vue2-highcharts, you should define a globle Component vue-highcharts.js for in ~/plugins:

import Vue from 'vue'
import VueHighcharts from 'vue2-highcharts'

Vue.component('VueHighcharts', VueHighcharts)

and add it in nuxt.config.js:

plugins: [{ src: '~plugins/vue-highcharts.js', ssr: false }],

after that, you can use vue2-highcharts component in your nuxt.js project.

for more detail, you can see: vue-nuxt-demo for vue-highcharts

Props

Name Type Description(Default Value)
classname string classname for component(default: vue-highcharts)
style object component styles(default: {})
options object(require) options of highcharts
highcharts object Highcharts instance

Build Setup

# install dependencies
npm install

# open "localhost:8080" in browers
npm run dev

# build for production with minification
npm run build

For detailed explanation on how things work, consult the docs for vue-loader.

License

MIT

Copyright (c) 2017-present, superman66

More Repositories

1

vue-axios-github

Vue 全家桶 + axios 前端实现登录拦截、登出、拦截器等功能
JavaScript
2,683
star
2

vue2.x-douban

Vue2.0实现简易豆瓣电影webApp
JavaScript
797
star
3

vue-qart

the compoent of vue 2.x for qart.js
JavaScript
293
star
4

react-test-demo

React test demo with Jest and Enzyme
JavaScript
148
star
5

wakatime-sync

Update Wakatime summary data to your gist every day
JavaScript
112
star
6

koa-jwt-sample

koa jwt login sample
JavaScript
78
star
7

wakatime-dashboard

Wakatime Dashboard gets data from Gist
JavaScript
48
star
8

react-douban

豆瓣电影-react版本
JavaScript
44
star
9

front-end-blog

前端博客收集
27
star
10

mac

高效、好玩、有趣的 Mac 软件推荐
23
star
11

koa-blog-api

Blog API build on koa2 + node.js
JavaScript
17
star
12

node-proxy-api

The simple node proxy api
JavaScript
16
star
13

sony-apps

sony 微单 apps
7
star
14

gatsby-starter-notion

Usging Notion + Gatsby + Netlify build your blog efficiently.
JavaScript
6
star
15

docker-demo

docker learning code
JavaScript
5
star
16

vue-nuxt-demo

Nuxt.js demo for vue-highcharts
Vue
4
star
17

eysenck-questionnaires

艾森克人格问卷、艾森克情绪稳定评测表
TypeScript
3
star
18

img2base64

图片在线转换 base64
HTML
2
star
19

notion-deploy-to-netlify

Deploy notion blog to netlify script of Tampermonkey
JavaScript
2
star
20

node-express-todo

基于node+nodejs+mongodb+angular的一个todo sample
JavaScript
2
star
21

angular-markdown

基于localStorage和AngularJS的markdown笔记本
JavaScript
2
star
22

logseq-plugin-url-md

Convert URL to Markdown links logseq plugin
TypeScript
2
star
23

docker-slides

CSS
2
star
24

angular-clipboard

angular-clipboard using clipboard.js that without using flash
JavaScript
2
star
25

tampermonkey-scripts

tampermonkey scripts
JavaScript
1
star
26

grid-trading-book

E大网格交易小账本
TypeScript
1
star
27

logseq-plugin-share-block

Share block with image
TypeScript
1
star
28

get-urls-md

TypeScript
1
star
29

react-mobx-todo

Todo Sample of React + MobX
JavaScript
1
star
30

logseq-plugin-date-picker

TypeScript
1
star
31

ffmpeg-gui

ffmpeg GUI build on Electron
1
star
32

css-modules-demo

CSS Module demo 学习
JavaScript
1
star
33

wakatime-notify

Sending wakatime daily report to Telegram, WeCom
JavaScript
1
star
34

js-design-pattern

js-design-pattern
JavaScript
1
star
35

mobX-stopWatch

MobX + React StopWatch demo
JavaScript
1
star
36

react-redux-todo

This is the complete source code of the tiny todo app
JavaScript
1
star