How to use bar charts in Vue and modify the configuration yourself

How to use bar charts in Vue and modify the configuration yourself

1. Import echart in HTML file

 <!-- Import echarts -->
 <script src="https://cdn.bootcdn.net/ajax/libs/echarts/4.8.0/echarts.min.js"></script>

2. Mount the echarts object on main.js

Vue.prototype.$echarts = window.echarts
// Use this.$echarts directly when using

3. Page structure

<template>
 <div class="com-container">
  <div class="com-chart" ref="sellerRef"></div>
 </div>
</template>

4.Data in data

export default {
 data () {
  return {
   // Initialized chart chartInstance: null,
   allDate: null, //Data returned by the server}
 },
}
```js
##### 5. Logic in methods ```js
methods: {
  // Initialize echarts object initEchart(){
    // Get the DOM object this.chartInstance = this.$echarts.init(this.$refs.sellerRef)
  },
  // Get data from the server async getData(){
    const {data:res} = await this.$http.get('seller')
    this.allDate = res
    // The data structure of the return is name, merchant, value // Sort the returned data from small to large sort method this.allDate.sort((a, b) => {
    return a.value - b.value
   })
    // Call the update view method this.updateChart()
  },
  // Update the chart updateChart(){
  // Y-axis category axis data const sellerNames = this.allDate.map(item=>{
    // Adjust return item.name according to your needs
  })
  // Data of the x-axis value axis const sellerValues ​​= this.allDate.map(item=>{
    return item.value
  })
     const option = {
    xAxis:
     type: 'value'
    },
    yAxis: {
     type: 'category',
     // The y-axis coordinate axis uses the traversed name
     data:sellerNames
    },
    series: [
     {
      // Type is bar chart type: 'bar',
      // The x-axis data needs to be set in the series data type as the traversal value
      data:sellerValues
     }
    ]
  }
  // Render optio data to dom object this.chartInstance.setOption(option)
},

Mounted hook function call

 // DOM loading is complete call mounted () {
  this.initChart()
  this.getData()
 },

Changing the column chart configuration

1. Introduce the theme configuration file in index.html

 <!-- Introducing the topic -->
 <script src="./static/lib/theme/chalk.js"></script>

2. Use initialization to get DOM and pass it into chalk where the theme is needed

   this.chartInstance = this.$echarts.init(this.$refs.sellerRef, 'chalk')

3.option configuration LinearGradient(x1,x2,y1,y2) linear gradient

   const option = {
    title:
     text: '| Merchant sales statistics',
     textStyle: {
      fontSize: 66
     },
     left: 20,
     top: 20
    },
    // Axis configuration grid: {
     top: '20%',
     left: '3%',
     right: '6%',
     bottom: '3%',
     // The distance includes the axis text containLabel: true
    },
    xAxis:
     type: 'value'
    },
    yAxis: {
     type: 'category',
     // The y-axis coordinate axis uses the traversed name
     data:sellerNames
    },
    series: [
     {
      // Type is bar chart type: 'bar',
      // The x-axis data needs to be set in the series data type as the traversal value
      data: sellerValues,
      // Column width barWidth: 66,
      // Column text does not display label by default: {
       show: true,
       // The text is displayed on the right position: 'right',
       textStyle: {
        // The color is white color: 'white'
       }
      },
      //Control each item in the column itemStyle: {
       // Control the corner radius of the barBorderRadius: [0, 33, 33, 0],
       // Linear gradient // Specify different percentages of color values ​​color: new this.$echarts.graphic.LinearGradient(0, 0, 1, 0, [
        {
         // 0 percent style offset: 0,
         color: '#5052EE'
        },
        {
         // 100% offset: 1,
         color: '#AB6EE5'
        }
       ])
      }
     }
    ],
    tooltip: {
     trigger: 'axis',
     axisPointer:
      type: 'line', // Default is a straight line, optional: 'line' | 'shadow'
      z: 0, // Background level lineStyle: {
       width: 66, // background width color: '#2D3443' // background color}
     }
    }
   }
   ```

The above is the details of how to use the bar chart in Vue and modify the configuration by yourself. For more information about using the bar chart in Vue, please pay attention to other related articles on 123WORDPRESS.COM!

You may also be interested in:
  • Vue Echarts implements column chart with scrolling effect
  • Vue+echarts realizes 3D column chart
  • Vue implements three-dimensional column chart based on echarts
  • Vue uses echarts to implement a horizontal column chart example
  • Implementing a simple column chart using D3.js+Vue
  • Vue uses Echarts to implement a three-dimensional bar chart
  • Vue echarts realizes horizontal bar chart
  • Vue echarts realizes dynamic display of bar chart
  • Vue+echarts realizes stacked bar chart
  • Vue uses echarts to implement a three-dimensional column chart

<<:  MySQL detailed explanation of isolation level operation process (cmd)

>>:  Detailed steps for setting up a nexus server

Recommend

Difference between MySQL btree index and hash index

In MySQL, most indexes (such as PRIMARY KEY, UNIQ...

MySQL 8.0.20 winx64 installation and configuration method graphic tutorial

This article shares with you the installation and...

Javascript File and Blob Detailed Explanation

Table of contents File() grammar parameter Exampl...

Example of configuring multiple SSL certificates for a single Nginx IP address

By default, Nginx supports only one SSL certifica...

Detailed Tutorial on Using xargs Command on Linux

Hello everyone, I am Liang Xu. When using Linux, ...

Linux file and user management practice

1. Display the files or directories in the /etc d...

The role of MySQL 8's new feature window functions

New features in MySQL 8.0 include: Full out-of-th...

How to change the mysql password on the Xampp server (with pictures)

Today, I found out while working on PHP that if w...

Let's talk about bitwise operations in React source code in detail

Table of contents Preface Several common bit oper...

Vue implements video upload function

This article example shares the specific code of ...

MySQL Server 8.0.13.0 Installation Tutorial with Pictures and Text

Install 8.0.13 based on MySQL 6.1.3. MySQL 8.0.13...

A brief discussion on docker compose writing rules

This article does not introduce anything related ...

How to deploy redis in linux environment and install it in docker

Installation Steps 1. Install Redis Download the ...