uniapp使用ucharts组件

news2025/2/4 13:05:11

 1.ucharts准备

有两种使用方式:一种是在uni的插件市场下载(组件化开发)。一种是手动引入ucharts包。官方都封装好组件了,我们不用岂不是浪费。

直接去dcloud插件市场(DCloud 插件市场)找,第一个是ucharts,第二个是echarts。

不考虑小程序的话,echarts更好,功能丰富,文档工具免费。

ucharts体积要小非常多,但是工具要会员,差点意思,而且网传bug会多一点,但我没遇到。

ucharts文档:uCharts官网 - 秋云uCharts跨平台图表库

2.体积问题

ucharts的里static下放了echarts的文件,导致体积比较大,可以删了。忘了要不要改qiun-data-charts里的引入地址,如果要改的话项目会有报错提示。

以下酌情优化:

因为我的uni_modules里包比较多,导致主包体积有点大,所以我又将ucharts给提取到分包里,并且删除了不需要的文件。同时把qiun-data-charts里的引入地址改一下,注意有两处引入要改。

如果开发中不需要改u-charts源码的话,可以用u-charts.min.js,同样改一下上述引入地址,再把u-charts.js删了,体积会更小。

 3.使用

完整代码在下面,根据自己的理解写了点注释。

跟平常使用组件一样,如果没有像我一样把ucharts的提到分包,就不需要引入和定义,直接用。

ucharts把图表配置和渲染数据分开了,chartData里放渲染数据,opts里放图表配置。

type就是定义这是什么图标,柱状图,条形图之类的。

import qiunDataCharts from './components/qiun-data-charts/qiun-data-charts.vue';
components:{qiunDataCharts},
//==========================================
<view style="width:100%; height:280rpx;">
	<qiun-data-charts :chartData="chartData" 
		background="none" type="bar" 
		:opts="opts"/>
</view>

 

<template>
	<view>
		<view class="chart">
			<view class="chart-item">
				<view class="form-title">
					车间在制品
				</view>
				<!-- 车间在制品 -->
				<view class="board">
					<view style="width:100%; height:280rpx;">
						 <qiun-data-charts :chartData="chartData" 
							background="none" type="bar" 
							:opts="opts"/>
					</view>
				</view>
			</view>
			<view class="chart-item">
				<view class="form-title">
					各工步在制品
				</view>
				<!-- 各工步在制品 -->
				<view class="board">
					<view style="width:100%; height:520rpx;">
						<qiun-data-charts :chartData="workData"
							background="none" type="column" 
							:opts="workopt"/>
					</view>
				</view>
			</view>
		</view>
	</view>
</template>

<script>
	import qiunDataCharts from './components/qiun-data-charts/qiun-data-charts.vue';
	export default {
		data() {
			return {
				chartData: {},
				opts: {},
				workData: {},
				workopt: {}
			};
		},
		components:{qiunDataCharts},
		onShow() {
			this.initWork()
			this.initCar()
		},
		methods: {
			// 工步
			initWork(){
				this.workData = {
					categories: ["自动焊接","系统返修","层压","层压测试","层压外观检","包装","装机"],
					series: [
						{
							name: "1车间",
							data: [35,36,31,33,13,34,14]
						},
						{
							name: "2车间",
							data: [18,27,21,24,6,28,37]
						},
						{
							name: "3车间",
							data: [18,27,21,24,6,28,23]
						},
						{
							name: "4车间",
							data: [18,27,21,24,6,28,19]
						}
					]
				},
				this.workopt = {
					color: ["#105fa3","#62bf8f","#c56d15","#c62d32","#73C0DE","#3CA272","#FC8452","#9A60B4","#ea7ccc"],
					padding: [15,15,0,5],
					enableScroll: false,
					legend: {
						show: true,//显示说明文本块
						fontColor: "#ffffff",//说明文本块颜色
					},
					dataLabel: false,//柱状体上方不显示数字
					xAxis: {
						rotateLabel: true,
						rotateAngle: 50,
						lineHeight: 50,
						axisLineColor: '#ffffff',//轴线颜色
						fontColor: "#ffffff",//x轴刻字颜色
						disableGrid: true,
						// format: 'xAxisDemo3'
					},
					yAxis: {
						gridColor: "#ffffff",//横向网格线颜色
						data: [{
							axisLineColor: "#ffffff",//轴线颜色
							fontColor: "#ffffff",//y轴刻字颜色
							min: 0
						}]
					},
					extra: {
						column: {
							type: "group",
							width: 6,
							seriesGap: 2,//一个刻度中多个柱的间距
							activeBgColor: "#000000",
							activeBgOpacity: 0.08,
						}
					}
				}
			},
			// 车间
			initCar(){
				this.chartData = {
					categories: ["1车间","2车间","3车间","4车间"],
					series: [
						{
							name: "完成量",
							data: [38,47,51,24]
						}
					]
				},
				this.opts = {
					color: ["#1890FF","#91CB74"],
					padding: [15,30,0,5],
					enableScroll: false,
					legend: {
						fontColor: "#ffffff",//说明文本块颜色
					},
					dataLabel: false,//柱状体上方不显示数字
					xAxis: {
						axisLineColor: "#ffffff",//轴线颜色
						gridColor: "#ffffff",//纵坐标颜色
						fontColor: "#ffffff",//x轴刻字颜色
						boundaryGap: "justify",
						disableGrid: false,
						min: 0,
						axisLine: false,
						max: 80
					},
					yAxis: {
						data: [{
							type: 'categories',
							axisLineColor: "#ffffff",//轴线颜色
							fontColor: "#ffffff",//y轴刻字颜色
						}]
					},
					extra: {
						bar: {
							type: "group",
							width: 9,
							meterBorde: 1,
							meterFillColor: "#FFFFFF",
							activeBgColor: "#000000",
							activeBgOpacity: 0.08,
							linearType: "custom",
							barBorderCircle: true,
							seriesGap: 2,
							categoryGap: 2
						}
					}
				}
			},
		},
	}
</script>

<style lang="scss">
.chart{
	padding: 0 10rpx;
	background: #3a3d5c;
	.chart-item{
		margin: 8rpx 0;
		padding: 20rpx;
		background: #202437;
	}
	.form-title{
		margin: 10rpx 0 26rpx;
		font-size: 30rpx;
		color: #fff;
		text-align: center;
	}
	
}
</style>

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

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

相关文章

mybatis-plus自动填充时间的配置类实现

mybatis-plus自动填充时间的配置类实现 在实际操作过程中&#xff0c;我们并不希望创建时间、修改时间这些来手动进行&#xff0c;而是希望通过自动化来完成&#xff0c;而mybatis-plus则也提供了自动填充功能来实现这一操作&#xff0c;接下来&#xff0c;就来了解一下mybatis…

一、Hadoop概述

文章目录 一、Hadoop是什么二、Hadoop发展历史三、Hadoop三大发行版本1. Apache Hadoop2. Cloudera Hadoop3. Hortonworks Hadoop 四、Hadoop优势1. 高可靠性2. 高扩展性3. 高效性4. 高容错性 五、Hadoop 组成1. Hadoop1.x、2.x、3.x区别2. HDFS 架构概述3. YARN 架构概述4. Ma…

深度学习笔记(9)——神经网络和反向传播

神经网络和反向传播 神经网络架构&#xff1a; 更多的神经元,更大的模型容量,使用更强的正则化进行约束。 神经网络的分层计算 f W 2 m a x ( 0 , W 1 x b 1 ) b 2 fW_2max(0,W_1xb_1)b_2 fW2​max(0,W1​xb1​)b2​,其中max函数体现了非线性,如果想要加深网络的层次,必须…

大模型辅助测试的正确打开方式?

测试的基本目的之一&#xff0c;是对被测对象进行质量评估。换言之&#xff0c;是要提供关于被测对象质量的“确定性”。因此&#xff0c;我们很忌讳在测试设计中引入“不确定性”&#xff0c;比如采用不可靠的测试工具、自动化测试代码逻辑复杂易错、测试选择假设过于主观等等…

ipad如何直连主机(Moonlight Sunshine)

Windows 被连接主机&#xff08;Windows&#xff09; 要使用的话需要固定ip&#xff0c;不然ip会换来换去&#xff0c;固定ip方法本人博客有记载Github下载Sunshine Sunshine下载地址除了安装路径需要改一下&#xff0c;其他一路点安装完成后会打开Sunshine的Web UI&#xff…

sentinel集成nacos启动报[check-update] get changed dataId error, code: 403错误排查及解决

整合nacos报403错误 因为平台写的一个限流代码逻辑有问题&#xff0c;所以准备使用sentinel来限流。平台依赖里面已经引入了&#xff0c;之前也测试过&#xff0c;把sentinel关于nacos的配置加上后&#xff0c;启动一直输出403错误 [fixed-10.0.20.188_8848-test] [check-upda…

紫光同创-盘古200pro+开发板

本原创文章由深圳市小眼睛科技有限公司创作&#xff0c;版权归本公司所有&#xff0c;如需转载&#xff0c;需授权并注明出处&#xff08;www.meyesemi.com) 一、开发系统介绍 开发系统概述 MES2L676-200HP 开发板采用紫光同创 logos2 系列 FPGA&#xff0c;型号&#xff1a;…

Vue开发环境搭建上篇:安装NVM和NPM(cpnm、pnpm)

文章目录 引言I 安装NVM1.1 Windows系统安装NVM,实现Node.js多版本管理1.2 配置下载镜像1.3 NVM常用操作命令II NPM永久使用淘宝源安装 cnpm安装pnpm【推荐】see also: vscode常用插件引言 淘宝镜像:http://npm.taobao.org 和 http://registry.npm.taobao.org 已在 2022.06.3…

【AI大模型】探索GPT模型的奥秘:引领自然语言处理的新纪元

目录 &#x1f354; GPT介绍 &#x1f354; GPT的架构 &#x1f354; GPT训练过程 3.1 无监督的预训练语言模型 3.2 有监督的下游任务fine-tunning &#x1f354; 小结 学习目标 了解什么是GPT.掌握GPT的架构.掌握GPT的预训练任务. &#x1f354; GPT介绍 GPT是OpenAI公…

正则表达式(三剑客之sed)

1.sed工具的使用 1.1 sed工具 1&#xff09;命令格式&#xff1a;sed -n ‘n’ p filename 1.2 打印某行 1&#xff09;打印第二行 [rootlocalhost ~]# sed -n 2p /etc/passwd 2&#xff09;第二行重复打印 [rootlocalhost ~]# sed 2p /etc/passwd 3&#xff09;所有行全部…

细说STM32F407单片机IIC总线基础知识

目录 一、 I2C总线结构 1、I2C总线的特点 2、I2C总线通信协议 3、 STM32F407的I2C接口 二、 I2C的HAL驱动程序 1、 I2C接口的初始化 2、阻塞式数据传输 &#xff08;1&#xff09;函数HAL_I2C_IsDeviceReady() &#xff08;2&#xff09;主设备发送和接收数据 &#…

Android笔试面试题AI答之Android基础(7)

Android入门请看《Android应用开发项目式教程》&#xff0c;视频、源码、答疑&#xff0c;手把手教 文章目录 1.Android开发如何提高App的兼容性&#xff1f;**1. 支持多版本 Android 系统****2. 适配不同屏幕尺寸和分辨率****3. 处理不同硬件配置****4. 适配不同语言和地区**…

《机器学习》线性回归模型实现

目录 一、一元线性回归模型 1、数据 2、代码 3、结果 二、多元线性回归模型 1、数据 2、代码 3、结果 一、一元线性回归模型 1、数据 2、代码 # 导入所需的库 import pandas as pd # 用于数据处理和分析 from matplotlib import pyplot as plt # 用于数据可视化 fr…

基于DIODES AP43781+PI3USB31531+PI3DPX1207C的USB-C PD Video 之全功能显示器连接端口方案

随着USB-C连接器和PD功能的出现&#xff0c;新一代USB-C PD PC显示器可以用作个人和专业PC工作环境的电源和数据集线器。 虽然USB-C PD显示器是唯一插入墙壁插座的交流电源输入设备&#xff0c;但它可以作为数据UFP&#xff08;上游接口&#xff09;连接到连接到TCD&#xff0…

QWidget应用封装为qt插件,供其他qt应用调用

在之前的文章中,有介绍通过QProcess的方式启动QWidget应用,然后将其窗口嵌入到其他的qt应用中,作为子窗口使用.这篇文章主要介绍qt插件的方式将QWidget应用的窗口封装为插件,然后作为其他Qt应用中的子窗口使用. 插件优点: 与主程序为同一个进程,免去了进程间繁琐的通信方式,…

关于 覆铜与导线之间间距较小需要增加间距 的解决方法

若该文为原创文章&#xff0c;转载请注明原文出处 本文章博客地址&#xff1a;https://hpzwl.blog.csdn.net/article/details/144776995 长沙红胖子Qt&#xff08;长沙创微智科&#xff09;博文大全&#xff1a;开发技术集合&#xff08;包含Qt实用技术、树莓派、三维、OpenCV…

ArcGIS教程(009):ArcGIS制作校园3D展示图

文章目录 数据下载校园3D展示图制作创建要素类矢量化【楼】要素矢量化【绿地】矢量化【范围】矢量化处理打开ArcScene添加动画数据下载 https://download.csdn.net/download/WwLK123/90189025校园3D展示图制作 创建要素类 添加底图: 新建【文件地理数据库】,并修改名称为【…

权限注解+AOP切面+额外工具(UUID生成id,JWT,Servlet客户端,字符串String工具类,Redis序列化,ip工具类)

权限功能和注解的关系 ①、定义三个注解 //角色认证&#xff0c;必须具有指定角色标识才能进入该方法 Retention(RetentionPolicy.RUNTIME) Target({ElementType.METHOD,ElementType.TYPE}) public interface RequiresRoles{//需要校验的角色标识String[] value() default {}…

RGB、HSV颜色模型及MATLAB互换应用实例

一、前言 RGB和HSV模型是数字图像处理中颜色空间中的两种重要表示方式&#xff0c;RGB和HSV都是描述颜色的数学模型&#xff0c;可以用于表示和处理图像中的颜色信息。 RGB模型是一种基于光的颜色模型&#xff0c;由红&#xff08;Red&#xff09;、绿&#xff08;Green&#x…

MySQL基础-常见的增删改查操作语句总结

1.数据库操作 查看所有数据库 show databases;创建数据库 create database db_stu; --如果数据库已经存在就不创建 create database if not exists db_stu; --添加默认字符集 create database db_stu default charset utf8mb4;删除数据库 drop database db_stu; --如果存在…