ucharts 图表

news2024/11/28 6:40:34
<template>
		<view>
		<cu-custom bgColor="bg-gradual-blue" :isBack="true">
			<block slot="content">出库统计图</block>
		</cu-custom>
		<view>
			 <uni-segmented-control :current="current" :values="items" @clickItem="onClickItem" styleType="button" activeColor="#3a82f8"></uni-segmented-control>
		</view>
  <view class="charts-box">
    <qiun-data-charts 
      type="pie"
      :opts="opts"
      :chartData="chartData"
    />
	<qiun-data-charts
	  type="mount"
	  :opts="opt"
	  :chartData="chartData"
	/>
  </view>
    </view>
</template>

<script>
import { forEach } from '../../common/luch-request/utils';
export default {
  data() {
    return {
	items: ['日', '月', '年'],
	current: 0,
    chartData: {},
      //您可以通过修改 config-ucharts.js 文件中下标为 ['pie'] 的节点来配置全局默认参数,如都是默认参数,此处可以不传 opts 。实际应用过程中 opts 只需传入与全局默认参数中不一致的【某一个属性】即可实现同类型的图表显示不同的样式,达到页面简洁的需求。
      opts: {
        color: ["#1890FF","#91CB74","#FAC858","#EE6666","#73C0DE","#3CA272","#FC8452","#9A60B4","#ea7ccc"],
        padding: [15,5,5,5],
        enableScroll: false,
		legend: {
			show:true,
			lineHeight:20
		},
        extra: {
          pie: {
            activeOpacity: 0.5,
            activeRadius: 10,
            offsetAngle: 0,
            labelWidth: 15,
            border: true,
            borderWidth: 3,
            borderColor: "#FFFFFF"
          }
        }
      },
	  opt: {
	          color: ["#1890FF","#91CB74","#FAC858","#EE6666","#73C0DE","#3CA272","#FC8452","#9A60B4","#ea7ccc"],
	          padding: [15,10,0,5],
	          enableScroll: false,
	          legend: {
				  show:false,
				
			  },
	          xAxis: {
	            disableGrid: true,
				rotateLabel:true,
				rotateAngle:"45",
	          },
	          yAxis: {
	            data: [
	              {
	                min: 0
	              }
	            ]
	          },
	          extra: {
	            mount: {
	              type: "bar",
	              widthRatio: 0.3,
	              borderWidth: 0,
	              barBorderRadius: [
	                50,
	                50,
	                50,
	                50
	              ],
	              linearType: "custom"
	            }
	          }
	        }
	      };
    
  },
  mounted() {
	  var today = new Date();
	  var yesterday = new Date(today.getTime());
	  this.getServerData(yesterday.getFullYear() + "-" + (yesterday.getMonth() + 1) + "-" + yesterday.getDate(),'0')
  },
  methods: {
	async getServerData(item,type) {
			let that = this
			let params = {
				item: item,
				type: type
			}
			await that.$http.get('/totalView/totalView/PieChuKu',{params: params}).then(res => {
				   // 计算总值
				   const totalValue = res.data.result.reduce((acc, item) => acc + item.value, 0);
				   // 计算占比并更新数组
				   if(totalValue==0){
					   res.data.result.forEach(item => {
					     item.labelText = '0%';
					   });
				   }
				  else{
					  res.data.result.forEach(item => {
					    const percentage = (item.value / totalValue) * 100;
					  	item.labelText = percentage.toFixed(2)+"%";
					  });
				  }
					   let ress = {
					       series: [
					         {
					   		data:res.data.result
					   	  }
					       ]
						   
					     };
						 this.chartData = JSON.parse(JSON.stringify(ress));
						 
				   
			}).catch(err => {
				that.$tip.alert("网络波动,请重试!")
			    console.log("err")
			})
	 },
	 onClickItem(e) {
	       if (this.current != e.currentIndex) {
	         this.current = e.currentIndex;
			 if(this.current=="0"){
				 var today = new Date();
				 var yesterday = new Date(today.getTime());
			     this.getServerData(yesterday.getFullYear() + "-" + (yesterday.getMonth() + 1) + "-" + yesterday.getDate(),'0')
			 }
	
			 if(this.current=="1"){
			 	var today = new Date();
			 	var yesterday = new Date(today.getTime());
			 	this.getServerData(yesterday.getFullYear() + "-" + (yesterday.getMonth() + 1) + "-" + yesterday.getDate(),'1');
			 }
			 
			 if(this.current=="2"){
			 	var today = new Date();
			 	var yesterday = new Date(today.getTime());
			 	this.getServerData(yesterday.getFullYear() + "-" + (yesterday.getMonth() + 1) + "-" + yesterday.getDate(),'2');
			 }  
	       }
	     }
  }
};
</script>

<style scoped>
  /* 请根据实际需求修改父元素尺寸,组件自动识别宽高 */
  .charts-box {
    width: 100%;
    height: 230px;
  }
</style>

地址:演示 - uCharts跨平台图表库 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1177121.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

360压缩安装一半不动了怎么办?分享三个简单的方法!

如果您在使用360压缩时遇到安装一半就卡住不动的问题&#xff0c;下面是一些建议和解决方案&#xff0c;主要包括四个方面的解决办法&#xff0c;排查是否是电脑硬件问题、是否为电脑软件问题、是否为360本身的问题&#xff0c;都无法解决&#xff0c;那么只能选择安装其他压缩…

Codeforces Round 906 (Div. 2--ABC)

A.Doremys Paint 3 题目 一个元素全为整数的数组&#xff0c;如果满足相邻两个元素和相同&#xff0c;我们就认定此数组is good。给定一个长度为n的数组a&#xff0c;可以任意改变元素顺序&#xff0c;判定数组a是否is good。 输入 首行t测试数据数量&#xff0c; 每组数据…

Java——》可见性

推荐链接&#xff1a; 总结——》【Java】 总结——》【Mysql】 总结——》【Redis】 总结——》【Kafka】 总结——》【Spring】 总结——》【SpringBoot】 总结——》【MyBatis、MyBatis-Plus】 总结——》【Linux】 总结——》【MongoD…

洗地机哪款好用?洗地机测评排行榜

对于当代年轻人来说&#xff0c;打扫卫生一直是让人头疼的问题&#xff0c;上班一天已经很疲惫了&#xff0c;还要花费很多时间和精力去搞卫生是真的很闹心&#xff0c;特别是对于有小孩的家庭&#xff0c;处理零食碎屑、饭菜那是每天必要的流程&#xff0c;有时候黏在地板上了…

字符串混淆

IDA打开so&#xff0c;在Export里面搜索.datadiv 跟进可以找到混淆的字符串 异或加密的字符串可以直接手动异或恢复 Export里面搜索JNI_OnLoad 如果没有将变量类型改为JavaVM *vm, void *reserved 在这里Load jni.h 一些OLLVM加密的字符串可以直接用Frida来hook function h…

Web项目常用的技术栈有哪些?

我在软件开发工具低代码领域探索了多年&#xff0c;从 2014 开始研发低代码前端渲染&#xff0c;到 2018 年开始研发后端低代码数据模型&#xff0c;发布了JNPF开发平台。 谨以此文针对 JNPF-JAVA-Cloud微服务 进行相关技术栈展示&#xff1a; 1. 项目前后端分离 前端采用Vue.j…

软件设计不是CRUD(5):耦合度的强弱(下)

接上文《软件设计不是CRUD&#xff08;4&#xff09;&#xff1a;耦合度的强弱&#xff08;上&#xff09;》 1.5、数据耦合 在模块间耦合强度已经降低至控制耦合的基础上&#xff0c;如果被调用的模块要求传入的是简单的数值&#xff0c;或者一种抽象的结构。这种依赖强度叫…

iPortal如何灵活设置用户名及密码的安全规则

作者&#xff1a;yx 目录 前言 一、配置文件介绍 1、<passwordRules>节点 注意事项&#xff1a; 2、<usernameRules>节点 二、应用实例 1、配置文件设置 2、验证扩展结果 三、结果展示 前言 SuperMap iPortal提供了扩展账户信息合规度校验规则的能力&#…

大数据毕业设计选题推荐-设备环境监测平台-Hadoop-Spark-Hive

✨作者主页&#xff1a;IT毕设梦工厂✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…

V8引擎如何存储对象(VIP课程)

在V8中对象的结构 主要分为三个指针构成的&#xff0c;分别是隐藏类&#xff0c;properties(常规属性)&#xff0c;elements&#xff08;排序属性&#xff09; 了解 常规属性 和 排序属性 let xm {100: "test-100",3: "test-3",C: "test-C",1…

01-基于IDEA,Spring官网,阿里云官网,手动四种方式创建SpringBoot工程

快速上手SpringBoot SpringBoot技术由Pivotal团队研发制作&#xff0c;功能的话简单概括就是加速Spring程序初始搭建过程和Spring程序的开发过程的开发 最基本的Spring程序至少有一个配置文件或配置类用来描述Spring的配置信息现在企业级开发使用Spring大部分情况下是做web开…

MySQL数据库的备份和恢复

备份 完全备份和完全备份 完全备份 完全备份&#xff1a;就是将整个数据库完整的进行备份 增量备份 增量备份&#xff1a;就是在完全备份的基础之上&#xff0c;对后续新增的内容进行备份 备份的需求 1、 在生产环境中数据的安全至关重要&#xff0c;任何数据的丢失都可…

APP测试的7大注意点。

1. 运行 1&#xff09; App安装完成后的试运行&#xff0c;可正常打开软件。 2&#xff09; App打开测试&#xff0c;是否有加载状态进度提示。 3&#xff09; App⻚面间的切换是否流畅&#xff0c;逻辑是否正确。 4&#xff09; 注册 同表单编辑⻚面 用户名密码⻓度 …

windows环境下安装Java过程(免登录Oracle官网下载java)

下载路径 oracle官网&#xff1a; java下载路径 Oracle共享账号可下载JDK&#xff1a; 指路 安装流程 执行下载后的jdk的可执行文件一路next下去&#xff0c; 可以自定义安装路径添加环境变量&#xff0c; 两个地方需要添加 在cmd中输入java -version 进行验证&#xff0c;…

【Web】在前端中CSS的语法

CSS规则是由两个主要的部分构成&#xff1a;选择器、以及一条或多条声明。 选择器通常是需要改变的HTML元素。 每条声明由一个属性和一个值组成。 属性&#xff08;Property&#xff09;是需要设置的样式属性&#xff08;Style attribute&#xff09;。每一个属性有一个值。…

vue 实现在线预览Excel-LuckyExcel/LuckySheet实现方案

一、准备工作 1. npm安装 luckyexcel npm i -D luckyexcel 2.引入luckysheet 注意&#xff1a;引入luckysheet&#xff0c;只能通过CDN或者直接引入静态资源的形式&#xff0c;不能npm install。 个人建议直接下载资源引入。我给你们提供一个下载资源的地址&#xff1a; …

vue3实践

选项式API和组合式API 1、使用选项式 API&#xff0c;用包含多个选项的对象来描述组件的逻辑&#xff0c;例如 data、methods 和 mounted。选项所定义的属性都会暴露在函数内部的 this 上&#xff0c;它会指向当前的组件实例。 2、组合式 API&#xff0c;我们可以使用导入的 A…

4、Python基本数据类型:数字、字符串、列表、元组、集合、字典

文章目录 1、Python基本数据类型简介2、数字3、字符串4、列表5、元组6、集合7、字典1、Python基本数据类型简介 Python是一种非常强大且易于学习的编程语言,它具有简洁的语法和丰富的数据类型。了解和掌握Python的基本数据类型是学习和使用Python的基础。本文将详细介绍Pytho…

Qt 继承QAbstractListModel实现自定义ListModel

1.简介 QAbstractListModel类提供了一个抽象模型&#xff0c;可以将其子类化以创建一维列表模型。 QAbstractListModel为将其数据表示为简单的非层次项目序列的模型提供了一个标准接口。它不直接使用&#xff0c;但必须进行子类化。 由于该模型提供了比QAbstractItemModel更…

今天放个大招,带你手把手搭建 Jenkins 的分布式构建

UI 自动化测试代码写完了以后&#xff0c;会放到 Jenkins 这样的持续集成工具上去构建。 如果 Jenkins 平台是搭建在服务器上&#xff0c;会面临 2 个问题&#xff1a; 第一个问题是 UI 自动化测试需要渲染界面&#xff0c;需要消耗大量的 CPU 和内存资源&#xff0c;如果服务…