Skip to content

open-data-plan/g2plot-vue

Folders and files

NameName
Last commit message
Last commit date
Jul 23, 2024
Jul 23, 2024
Jul 23, 2024
Jul 30, 2021
Jan 8, 2025
Jan 8, 2025
Feb 8, 2025
Sep 1, 2020
Mar 3, 2021
Mar 3, 2021
Apr 6, 2023
Jul 13, 2022
Feb 8, 2025
Sep 1, 2020
Aug 16, 2021
Aug 6, 2020
Jan 8, 2025
Feb 8, 2025
Sep 1, 2020
Jan 29, 2023
May 5, 2025
Mar 10, 2025
Jul 23, 2024
Mar 3, 2021

Repository files navigation

@opd/g2plot-vue

G2Plot for Vue, see documentation for more

build npm npm npm codecov FOSSA Status

Install

npm install @opd/g2plot-vue

Usage

Edit g2plot-vue-basic-example

jsx

import { defineComponent, ref } from 'vue'
import { LineChart, LineChartProps } from '@opd/g2plot-vue'

const config: LineChartProps = {
  height: 350,
  autoFit: true,
  xField: 'year',
  yField: 'value',
  smooth: true,
  meta: {
    value: {
      max: 15,
    },
  },
  data: [
    { year: '1991', value: 3 },
    { year: '1992', value: 4 },
    { year: '1993', value: 3.5 },
    { year: '1994', value: 5 },
    { year: '1995', value: 4.9 },
    { year: '1996', value: 6 },
    { year: '1997', value: 7 },
    { year: '1998', value: 9 },
    { year: '1999', value: 11 },
  ],
}

export default defineComponent(() => {
  const chartRef = ref(null)
  return () => <LineChart {...config} chartRef={chartRef} />
})

template

<template>
  <line-chart v-bind="config" />
</template>
<script>
import Vue from 'vue'
import { LineChart } from '@opd/g2plot-vue'

Vue.use(LineChart)

export default {
  data() {
    return {
      config: {
        height: 350,
        autoFit: true,
        xField: 'year',
        yField: 'value',
        smooth: true,
        meta: {
          value: {
            max: 15,
          },
        },
        data: [
          { year: '1991', value: 3 },
          { year: '1992', value: 4 },
          { year: '1993', value: 3.5 },
          { year: '1994', value: 5 },
          { year: '1995', value: 4.9 },
          { year: '1996', value: 6 },
          { year: '1997', value: 7 },
          { year: '1998', value: 9 },
          { year: '1999', value: 11 },
        ],
      },
    }
  },
}
</script>

DEMO

API

All config defined in G2Plot document can be used as props or attrs

Notable API in g2plot-vue

  • chartRef: ref of rendered plot, available after plot mounted, NOT component mounted
  • onReady: callback after plot mounted, NOT component mounted

FYI

  • Build failed with vite

    g2plot-vue use babel to build output files, and transform @babel/runtime with dependencies, so @babel/runtime is required.

Develop

npm install
npm run build

License

FOSSA Status