当前位置: 首页 > news >正文

vue-饼形图-详细

显示效果

代码

<template>

  <div style="height: 350px;">

    <div :class="className" :style="{height:height,width:width}"></div>

  </div>

</template>

<script>

import * as echarts from 'echarts';

require('echarts/theme/macarons') // echarts theme

import resize from './mixins/resize'

export default {

  mixins: [resize],

  props: {

    className: {

      type: String,

      default: 'chart'

    },

    width: {

      type: String,

      default: '100%'

    },

    height: {

      type: String,

      default: '300px'

    }

  },

  data() {

    return {

      chart: null,

      pieChartData:[

          { value: 320, name: '找工作' },

          { value: 240, name: '广告推广' },

          { value: 149, name: '二手物品' },

          { value: 100, name: '二手车' },

          { value: 59, name: '拼车出行' },

          { value: 59, name: '宠物出售' },

          { value: 59, name: '房屋出售' },

          { value: 59, name: '上门出售' }

      ]

    }

  },

  mounted() {

    this.$nextTick(() => {

      this.initChart()

    })

  },

  beforeDestroy() {

    if (!this.chart) {

      return

    }

    this.chart.dispose()

    this.chart = null

  },

  methods: {

    initChart() {

      // 计算百分比

      let mdataList = this.pieChartData

      let total = 0

      const target = new Map();              

      mdataList.forEach((item) => {

          // 计算value的和,用来算百分比

          total += item.value

          // 组成 map {A:1212} ,用来下面获取 value

          target.set(item.name, item.value)

      })

      this.chart = echarts.init(this.$el, 'macarons');

      this.chart.setOption({

        tooltip: {

          trigger: 'item',

          formatter: '{a} <br/>{b} : {c} ({d}%)'

        },

        legend: {

          left: 'right',

          orient: 'vertical', // 布局方式,默认为水平布局,可选为:'horizontal' ¦ 'vertical'

          top: '50',

          data: ['找工作', '广告推广', '二手物品', '二手车', '拼车出行','宠物出售','房屋出售','上门出售'],

          formatter: function(name) {

            let lists = [];

            let inum = target.get(name) / total * 100;

            //保留inum小数点后2位

            let vnum = parseFloat(inum).toFixed(2);

            lists.push(name + '-' + vnum + '%');

            return lists;

          },

        },

        title: {

          text: '分类统计',

          left: 'left',

        },

        series: [

          {

            name: '分类统计',

            type: 'pie',

            roseType: 'radius',

            radius: [15, 95],

            center: ['35%', '50%'],

            data: this.pieChartData,

            animationEasing: 'cubicInOut',

            animationDuration: 2600

          }

        ]

      })

    }

  }

}

</script>

相关文章:

vue-饼形图-详细

显示效果 代码 <template> <div style"height: 350px;"> <div :class"className" :style"{height:height,width:width}"></div> </div> </template> <script> import * as echarts from echarts; req…...

MySQL-备份+日志:介质故障与数据库恢复

目录 第1关&#xff1a;备份与恢复 任务描述 相关知识 MySQL的恢复机制 MySQL的备份与恢复工具 …...

嵌入式开发十八:USART串口通信实验

上一节我们学习了串口通信的基本理论&#xff0c;串口通信是学习单片机的一个重要的一步&#xff0c;非常重要&#xff0c;这一节我们通过实验来学习串口通信的使用&#xff0c;以及串口的接收中断的使用。 一、发送单个字节uint8_t数据或者字符型数据 实现的功能&#xff1a;…...

redis复习

redis知识点 redis持久化redis 订阅发布模式redis主从复制哨兵模式redis雪崩&#xff0c;穿透缓存击穿&#xff08;请求太多&#xff0c;缓存过期&#xff09;缓存雪崩 redis持久化 redis是内存数据库&#xff0c;持久化有两种方式&#xff0c;一种是RDB&#xff08;redis dat…...

SUSE linux的快照和恢复

snapper用于创建和管理文件系统快照&#xff0c;并在需要时实现回滚&#xff0c;它还可以用于创建用户数据的磁盘备份。snapper使用btrfs文件系统或者精简配置的被格式化成XFS或EXT4的LVM卷。snapper可以通过命令行或YaST来进行管理。 btrfs是一种copy-on-write文件系统&#x…...

【Qt快速入门(六)】- QLineEdit按钮的使用

目录 Qt快速入门&#xff08;六&#xff09;- QLineEdit按钮的使用QLineEdit按钮的使用QLineEdit的基本用法1. 创建和设置文本2. 获取输入文本3. 清空输入文本 文本处理1. 选择文本2. 设置光标位置3. 撤销和重做 输入验证1. 输入掩码2. 校验器3. 输入限制 样式设置1. 设置字体和…...

常用损失函数详解:广泛使用的优化约束方法

各类常用损失函数详解&#xff1a;广泛使用的优化约束方法 今天介绍下损失函数&#xff0c;先介绍下我常用的方法SmoothedL1&#xff0c;它是一个平滑的L1 penalty函数,用于处理约束violation。 标准的L1 penalty函数定义为: L 1 ( x ) { 0 , if x ≤ 0 x , if x > 0 …...

鸿蒙开发组件:【创建DataAbility】

创建DataAbility 实现DataAbility中Insert、Query、Update、Delete接口的业务内容。保证能够满足数据库存储业务的基本需求。BatchInsert与ExecuteBatch接口已经在系统中实现遍历逻辑&#xff0c;依赖Insert、Query、Update、Delete接口逻辑&#xff0c;来实现数据的批量处理。…...

配电室数据中心巡检3d可视化搭建的详细步骤

要搭建配电室巡检的3D可视化系统&#xff0c;可以按照以下步骤进行&#xff1a; 收集配电室数据&#xff1a; 首先&#xff0c;需要收集配电室的相关数据&#xff0c;包括配电室的布局、设备信息、传感器数据等。可以通过实地调查、测量和设备手册等方式获取数据。 创建3D模型…...

TIME_WAIT的危害

前言 该文章主要讨论下TIME_WAIT的存在意义和潜在危害&#xff0c;以及解决措施。 具体内容 首先看一下下面这幅图 这幅图来自《TCP IP详解卷1&#xff1a;协议 原书第2版中文》TCP状态变迁图。 TIME_WAIT存在意义 可靠的终止TCP连接。 保证让迟来的TCP报文有足够的时间被…...

搜维尔科技邀您共赴2024第四届轨道车辆工业设计国际研讨会

会议内容 聚焦“创新、设计、突破”&#xff0c;围绕“面向生命健康、可持续发展的轨道交通系统” 为主题&#xff0c;从数字化、智能化、人性化、绿色发展等方面&#xff0c;探索轨道交通行业的设计新趋势及发展新机遇。 举办时间 2024年7月10日-12日 举办地点 星光岛-青岛融…...

智能中人类造成的风险、机器造成的风险、环境造成的风险

在使用智能技术时&#xff0c;可能会面临各种类型的风险。以下是一些可能的风险情况&#xff1a; 1、人类造成的风险 错误判断和决策&#xff1a;人类在使用智能系统时可能会因为各种原因做出错误的判断和决策&#xff0c;导致不良后果。人为错误&#xff1a;技术操作人员、维护…...

MYSQL基础查询

示例&#xff1a;user_profile iddevice_idgenderageuniversityprovince12138male21北京大学Beijing23214male复旦大学Shanghai36543female20北京大学Beijing42315female23浙江大学Zhejiang55432male25山东大学Shandong 查询所有列 select * from user_profile&#xff1b;查询…...

【Golang】Go 中的生产者-消费者模式

Go 中的生产者-消费者模式 来源:https://medium.com/@mm.nikfarjam/the-producer-consumer-pattern-in-go-cf97299a0320 文章目录 Go 中的生产者-消费者模式介绍关键组件在 Go 中的实现结论Go 中的生产者-消费者模式 介绍 生产者-消费者模式是处理大数据的最常见设计模式之一…...

【通过新能源汽车的智慧数字底盘技术看计算机的相关技术堆栈?以后是软硬结合的全能程序员的天下,取代全栈(前后端都会的全栈程序员)】

汽车的“智慧数字底盘”是一个综合性的技术平台&#xff0c;旨在提升车辆的性能、安全性和驾驶体验。它集成了多种先进的技术和系统&#xff0c;是全能程序员的必杀技&#xff01; 1. 传感器技术 a. 激光雷达&#xff08;LiDAR&#xff09; 用于生成高分辨率的3D地图&#…...

Python网络爬虫4-实战爬取pdf

1.需求背景 爬取松产品中心网站下的家电说明书。这里以冰箱为例&#xff1a;松下电器-冰箱网址 网站分析&#xff1a; 第一步&#xff1a; 点击一个具体的冰箱型号&#xff0c;点击了解更多&#xff0c;会打开此型号电器的详情页面。 第二步&#xff1a;在新打开的详情页面中…...

超神级!Markdown最详细教程,程序员的福音

超神级&#xff01;Markdown最详细教程&#xff0c;程序员的福音Markdown最详细教程&#xff0c;关于Markdown的语法和使用就先讲到这里&#xff0c;如果喜欢&#xff0c;请关注“IT技术馆”。馆长会更新​最实用的技术&#xff01;https://mp.weixin.qq.com/s/fNzhLFyYRd3skG-…...

Android OTA 升级基础知识详解+源码分析

前言&#xff1a; 本文仅仅对OTA升级的几种方式的概念和运用进行总结&#xff0c;仅在使用层面对其解释。需要更详细的内容我推荐大神做的全网最详细的讲解&#xff1a; https://blog.csdn.net/guyongqiangx/article/details/129019303?spm1001.2014.3001.5502 三种升级方式…...

【吊打面试官系列-Mysql面试题】SQL 语言包括哪几部分?每部分都有哪些操作关键字?

大家好&#xff0c;我是锋哥。今天分享关于 【SQL 语言包括哪几部分&#xff1f;每部分都有哪些操作关键字&#xff1f;】面试题&#xff0c;希望对大家有帮助&#xff1b; SQL 语言包括哪几部分&#xff1f;每部分都有哪些操作关键字&#xff1f; SQL 语言包括数据定义(DDL)、…...

Redis的缓存击穿与解决

缓存击穿问题也叫热点Key问题&#xff0c;就是一个被高并发访问并且缓存重建业务较复杂的Key突然失效了&#xff0c;无数的请求访问会在瞬间给数据库带来巨大的冲击。 Redis实战篇 | Kyles Blog (cyborg2077.github.io) 目录 解决方案 互斥锁 实现 逻辑过期 实现 解决方案…...

Hermes Agent 深度解析:从架构、安装、核心能力到与 OpenClaw 的区别

一、前言 近两年,AI Agent 项目越来越多。从早期的 AutoGPT,到面向开发者的 Claude Code、OpenAI Codex CLI,再到各种本地个人助手类项目,大家都在探索一个问题: 如何让大模型不只是“回答问题”,而是真正能调用工具、执行任务、积累经验,并长期为用户工作? NousResea…...

STM32F103 Flash读写避坑大全:从解锁失败到数据丢失,我踩过的坑你别再踩

STM32F103 Flash读写避坑大全&#xff1a;从解锁失败到数据丢失&#xff0c;我踩过的坑你别再踩 第一次在STM32F103上操作内部Flash时&#xff0c;我以为按照手册步骤就能轻松完成。直到调试灯疯狂闪烁、数据神秘消失、芯片莫名锁死&#xff0c;才意识到这片存储区域远没有想象…...

FFmpeg GUI终极指南:告别命令行,图形化音视频处理如此简单

FFmpeg GUI终极指南&#xff1a;告别命令行&#xff0c;图形化音视频处理如此简单 【免费下载链接】ffmpegGUI ffmpeg GUI 项目地址: https://gitcode.com/gh_mirrors/ff/ffmpegGUI 还在为复杂的FFmpeg命令行参数而头疼吗&#xff1f;FFmpeg GUI将彻底改变你的音视频处理…...

别再只盯着TOF了!从三角测距到相控阵,一文搞懂激光雷达的四种测距原理与选型避坑

激光雷达技术全景解析&#xff1a;从基础原理到工程选型实战指南 当扫地机器人精准绕开你的拖鞋&#xff0c;当自动驾驶汽车在暴雨中识别障碍物&#xff0c;背后都离不开一项关键技术——激光雷达。作为机器感知环境的"眼睛"&#xff0c;激光雷达的性能直接决定了整个…...

DXVK架构深度解析:跨平台图形API转换层的工程实践与技术创新

DXVK架构深度解析&#xff1a;跨平台图形API转换层的工程实践与技术创新 【免费下载链接】dxvk Vulkan-based implementation of D3D8, 9, 10 and 11 for Linux / Wine 项目地址: https://gitcode.com/gh_mirrors/dx/dxvk 技术背景与行业挑战 跨平台图形渲染的技术鸿沟…...

SMUDebugTool终极指南:解锁AMD Ryzen处理器底层调试与超频控制

SMUDebugTool终极指南&#xff1a;解锁AMD Ryzen处理器底层调试与超频控制 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: ht…...

如何用FastbootEnhance告别复杂命令行,实现Android设备可视化刷机

如何用FastbootEnhance告别复杂命令行&#xff0c;实现Android设备可视化刷机 【免费下载链接】FastbootEnhance A user-friendly Fastboot ToolBox & Payload Dumper for Windows 项目地址: https://gitcode.com/gh_mirrors/fa/FastbootEnhance 你是否曾经因为Andr…...

Linux磁盘告急:巧用ncdu定位并清理/dev/sda高占用

1. 当Linux服务器突然报警&#xff1a;磁盘爆满的紧急处理 "服务器磁盘空间不足"这个红色警告突然跳出来时&#xff0c;相信很多运维同学都会心头一紧。我上周就遇到了这个情况&#xff1a;凌晨三点收到报警短信&#xff0c;/dev/sda6分区显示100%占用&#xff0c;导…...

3步安装Page Assist:让你在浏览器中随时与本地AI对话

3步安装Page Assist&#xff1a;让你在浏览器中随时与本地AI对话 【免费下载链接】page-assist Use your locally running AI models to assist you in your web browsing 项目地址: https://gitcode.com/GitHub_Trending/pa/page-assist 想在浏览网页时随时调出AI助手&…...

机器学习项目工程化实战:从Poetry、Pre-commit到Hydra的标准化开发脚手架

1. 项目概述&#xff1a;一个面向机器学习实践者的“静修所”最近在GitHub上闲逛&#xff0c;发现了一个挺有意思的仓库&#xff0c;名字叫hesamsheikh/ml-retreat。初看这个标题&#xff0c;可能会有点摸不着头脑——“ml”是机器学习&#xff08;Machine Learning&#xff09…...