标签云效果

产品要求,词云要实现动态滚动。查资料,改写效果。

echarts词云效果

在这里插入图片描述
传统的echarts-wordCloud不能满足需求。

标签云

换了标签云,以下是代码

<template><div class="mx-auto" :style="{ width: width + 'px' }"><svg :width="width" :height="height" @mousemove="listener($event)"><a :href="tag.href" v-for="tag in tags" :key="tag.id"><text:x="tag.x":y="tag.y":font-size="18 * (600 / (600 - tag.z))":fill-opacity="(400 + tag.z) / 600":style="{ fill: tag.fill }">{{ tag.text }}</text></a></svg></div>
</template><script>
export default {props: {tagList: {type: Array,default: () => [],},},name: "tagCloud",data() {return {width: 800,height: 520,RADIUS: 230,speedX: Math.PI / 360,speedY: Math.PI / 360,tags: [],};},watch: {tagList: {handler(n, o) {this.init()},deep: true}},computed: {CX() {return this.width / 2.4;},CY() {return this.height / 2;},},created() {},mounted() {//使球开始旋转// const winWidth = document.documentElement.clientWidth || document.body.clientWidth;// this.width = winWidth * 0.8;// this.height = winWidth * (426 / 495);console.log(this.tagList);this.init();setInterval(() => {this.rotateX(this.speedX);this.rotateY(this.speedY);}, 18);},methods: {init() {let tags = [];for (let i = 0; i < this.tagList.length; i++) {let tag = {};let k = -1 + (2 * (i + 1) - 1) / this.tagList.length;let a = Math.acos(k);let b = a * Math.sqrt(this.tagList.length * Math.PI);tag.text = this.tagList[i].name;tag.x = this.CX + this.RADIUS * Math.sin(a) * Math.cos(b);tag.y = this.CY + this.RADIUS * Math.sin(a) * Math.sin(b);tag.z = this.RADIUS * Math.cos(a);tag.fill = this.getColor();// tag.href = '/knowledge-base/list/allMap?label=' + this.tagList[i].id;tags.push(tag);}this.tags = tags;},// 获取随机色getColor() {// let r = parseInt(Math.random() * 256);// let g = parseInt(Math.random() * 256);// let b = parseInt(Math.random() * 256);// return `rgba(${r},${g},${b},1)`;const colors = ['#2875B9','#2875B9','#2875B9'];const index = Math.floor(Math.random() * 3);return colors[index];},rotateX(angleX) {var cos = Math.cos(angleX);var sin = Math.sin(angleX);for (let tag of this.tags) {var y1 = (tag.y - this.CY) * cos - tag.z * sin + this.CY;var z1 = tag.z * cos + (tag.y - this.CY) * sin;tag.y = y1;tag.z = z1;}},rotateY(angleY) {var cos = Math.cos(angleY);var sin = Math.sin(angleY);for (let tag of this.tags) {var x1 = (tag.x - this.CX) * cos - tag.z * sin + this.CX;var z1 = tag.z * cos + (tag.x - this.CX) * sin;tag.x = x1;tag.z = z1;}},listener(event) {//响应鼠标移动var x = event.clientX - this.CX;var y = event.clientY - this.CY;this.speedX =x * 0.0001 > 0? Math.min(this.RADIUS * 0.00002, x * 0.0001): Math.max(-this.RADIUS * 0.00002, x * 0.0001);this.speedY =y * 0.0001 > 0? Math.min(this.RADIUS * 0.00002, y * 0.0001): Math.max(-this.RADIUS * 0.00002, y * 0.0001);},},
};
</script><style lang="less" scoped></style>

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

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

相关文章

正点原子RK3588(一)——开机测试+AI初探

一、adb adb shell&#xff0c;进入板子的根目录 exit&#xff0c;退出到linux adb pull 板子 linux&#xff08;从板子到linux&#xff09; adb push linux 板子&#xff08;从linux到板子&#xff09; 二、测试AI功能 2.1 resnet18 import cv2 import numpy as np import…

全视通解读政策风向,智慧手术室究竟怎么做信息化?

尽管智慧手术室的建设与发展日益重要&#xff0c;但是目前国内外对智慧手术室的定义仍是众说纷纭&#xff0c;直至日前&#xff0c;上海交通大学医学院附属瑞金医院、上海市数字医学创新中心联合L.E.K.咨询发布的《中国智慧手术室发展与实践白皮书》&#xff08;后简称《白皮书…

序列化方式二——JSON之fastjson

fastjson&fastjson2(版本&#xff1a;1.2.83_noneautotype) 扩展点 Fastjson通过其丰富的扩展点显著增强了用户定制序列化和反序列化行为的灵活性&#xff0c;完美契合了实际开发中的多样化需求。在SpringBoot与SpringCloud的集成环境中&#xff0c;开发者能够利用Seriali…

五、 共射极放大电路

共射极放大电路 1、三极管的结构、三极管各极电流关系、特性曲线、放大条件。   2、元器件的作用、电路的用途、电压放大倍数、输入和输出的信号电压相位关系、交流和直流等效电路图。 3、静态工作点的计算、电压放大倍数的计算。

【PCL实现点云分割】ROS深度相机实践指南(上):PCL库初识和ROS-PCL数据类型转换

前言 本教程使用PCL对ROS深度相机捕获到的画面进行操场上锥桶的分割 本人相关的RGBD深度相机原理及其使用教程&#xff1a; [csdn 博客] 上手一个RGBD深度相机&#xff1a;从原理到实践–ROS noeticAstra S&#xff08;上&#xff09;&#xff1a;解读深度测距原理和内外参推导…

金属3D打印经济效益高吗?

在我国制造业迈向产业升级的重要阶段&#xff0c;3D打印技术如同一股强劲的新风&#xff0c;特别是在航空航天、汽车、生物医疗等领域&#xff0c;已成为复杂构件制造的“明星”技术。那么&#xff0c;对于众多生产厂家而言&#xff0c;金属3D打印的经济账到底怎么算&#xff1…

rabbitmq 短信验证码

1.生成的验证码用redis存 减少数据库压力 2.通知运营商发送短信的事情交给rabbitmq的队列去做&#xff0c;无论成功或者是失败&#xff0c;用户那边都不知道。没有收到验证码&#xff08;监听失败&#xff09;用户只会觉得是运营商的问题&#xff0c;而不会怀疑是我们的系统有问…

深入掌握 Go 单元测试:从基础到进阶的完整指南

你好&#xff0c;我是陈明勇&#xff0c;一名热爱技术、乐于分享的开发者&#xff0c;同时也是开源爱好者。 成功的路上并不拥挤&#xff0c;有没有兴趣结个伴&#xff1f; 个人网站&#xff1a;https://chenmingyong.cn 文章持续更新&#xff0c;如果本文能让您有所收获&#…

罗马数字详解

一. 罗马数字の背景 1. 罗马数字的诞生与进化 罗马数字起源于古罗马帝国&#xff0c;拥有一个漫长而复杂的历史&#xff0c;始于公元前 8 世纪至 9 世纪&#xff0c;与古罗马帝国在帕兰丁山&#xff08;Palantine Hill&#xff09;周围建立的时间大致相同。不过&#xff0c;罗…

铲屎官进!宠物空气净化器真的有用吗?哪款去浮毛效果好

国庆小长假就要来了&#xff0c;别人都在苦恼抢票问题&#xff0c;而我在想会不会被我妈赶出家门... 毕业后我就留在了广州上班&#xff0c;独自一人租房难免会感觉孤独&#xff0c;就养了一只小猫和我作伴。这次放假这么久&#xff0c;我不放心留它一个人在家&#xff0c;也没…

SpringBoot 项目如何使用 pageHelper 做分页处理 (含两种依赖方式)

分页是常见大型项目都需要的一个功能&#xff0c;PageHelper是一个非常流行的MyBatis分页插件&#xff0c;它支持多数据库分页&#xff0c;无需修改SQL语句即可实现分页功能。 本文在最后展示了两种依赖验证的结果。 文章目录 一、第一种依赖方式二、第二种依赖方式三、创建数…

Virtuoso服务在centos中自动停止的原因分析及解决方案

目录 前言1. 问题背景2. 原因分析2.1 终端关闭导致信号12.2 nohup命令的局限性 3. 解决方案3.1 使用 screen 命令保持会话3.2 使用 tmux 作为替代方案3.3 使用系统服务&#xff08;systemd&#xff09; 4. 其他注意事项4.1 网络配置4.2 日志监控 结语 前言 在使用Virtuoso作为…

Transformer 的可视化解释

Transformer 的可视化解释&#xff1a;了解 LLM Transformer 模型如何与交互式可视化配合使用 部署 Nodejs version > 20.0 git clone https://github.com/poloclub/transformer-explainer.git cd transformer-explainer npm install npm run dev# fix: cnpm install --pl…

AD9854 为什么输出波形幅度受限??

&#x1f3c6;本文收录于《全栈Bug调优(实战版)》专栏&#xff0c;主要记录项目实战过程中所遇到的Bug或因后果及提供真实有效的解决方案&#xff0c;希望能够助你一臂之力&#xff0c;帮你早日登顶实现财富自由&#x1f680;&#xff1b;同时&#xff0c;欢迎大家关注&&am…

lambda 自调用递归

从前序与中序遍历序列构造二叉树 官方解析实在是记不住&#xff0c;翻别人的题解发现了一个有意思的写法 class Solution { public:TreeNode* buildTree(vector<int>& preorder, vector<int>& inorder) {auto dfs [](auto&& dfs, auto&&…

Pandas和matplotlib实现同期天气温度对比

目录 1、下载近两年的天气Excel数据 2、pandas加载Excel 3、将时间作为索引 4、按日计算最值、均值 5、选取近两年同期温度数据 6、同期温度曲线对比,共享y轴 1、下载近两年的天气Excel数据 一个免费的天气数据下载网址:METAR北京(机场)历史天气 (rp5.ru) 选择”北京天…

centos 7.9安装k8s

前言 Kubernetes单词来自于希腊语&#xff0c;含义是领航员&#xff0c;生产环境级别的容器编排技术&#xff0c;可实现容器的自动部署扩容以及管理。Kubernetes也称为K8S&#xff0c;其中8代表中间8个字符&#xff0c;是Google在2014年的开源的一个容器编排引擎技术&#xff…

一文读懂SpringCLoud

一、前言 只有光头才能变强 认识我的朋友可能都知道我这阵子去实习啦&#xff0c;去的公司说是用SpringCloud(但我觉得使用的力度并不大啊~~)… 所以&#xff0c;这篇主要来讲讲SpringCloud的一些基础的知识。(我就是现学现卖了&#xff0c;主要当做我学习SpringCloud的笔记吧&…

【JPCS出版】第二届应用统计、建模与先进算法国际学术会议(ASMA2024,9月27日-29)

第二届应用统计、建模与先进算法国际学术会议 2024 2nd International Conference on Applied Statistics, Modeling and Advanced Algorithms&#xff08;ASMA2024&#xff09; 会议官方 会议官网&#xff1a;www.icasma.org 2024 2nd International Conference on Applied …

Moveit2与gazebo联合仿真:添加摄像头传感器

1.代码更新修改 1.1 添加物理关节 如图&#xff0c;在原有机械臂的基础上添加camera_link和base_camera_joint作为传感器的几何属性 对应的xml代码如下 <link name"${prefix}camera_link"><collision><geometry><box size"0.01 0.1 0.05&…