Unity使用XCharts动态配置数据——折线图(LineChart)

news2025/7/19 15:42:22

XCharts官网地址:https://xcharts-team.github.io/

本地上传资源:https://download.csdn.net/download/m0_64375864/90919669

效果图:

 动态配置数据:

public class Test3 : MonoBehaviour
{
    public LineChart lineChart;
    public List<Color32> colorPalettes;

    public string[] strsX = new string[] { "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12" };
    public double[] valueY1 = new double[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
    public double[] valueY2 = new double[] { 7, 5, 9, 5, 5, 6, 7, 0, 12, 15, 4, 2 };
    public double[] valueY3 = new double[] { 8, 5, 4, 7, 9, 10, 11, 13, 16, 15, 13, 1 };
    public string[] strSers = new string[] { "第一条", "第二条", "第三条" };
    void Start()
    {
        OnSuccessMethod();
    }
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.Space))
        {
            OnSuccessMethod();
        }
    }
    private void OnSuccessMethod()
    {

        lineChart.gameObject.SetActive(true);

        //清理数据
        lineChart.ClearData();
        lineChart.RemoveData();
        //添加X轴数据
        foreach (var str in strsX) // 如果所有曲线的 X 轴数据相同
        {
            lineChart.AddXAxisData(str);
        }
        lineChart.GetChartComponent<XAxis>().splitNumber = strsX.Length;
        //添加曲线
        for (int i = 0; i < strSers.Length; i++)
        {
            string serieName = strSers[i];
            lineChart.AddSerie<Line>(serieName);


            //折线属性
            lineChart.series[i].lineType = LineType.Normal;
            lineChart.series[i].symbol.type = SymbolType.None;
            lineChart.series[i].lineStyle.width = 1.2f;
            lineChart.series[i].symbol.show = true;     //折线节点
            lineChart.series[i].symbol.type = SymbolType.Circle;

            //背景
            lineChart.theme.customBackgroundColor = Color.white;
            lineChart.theme.customColorPalette = colorPalettes;
            lineChart.theme.enableCustomTheme = true;

            //标题
            lineChart.EnsureChartComponent<Title>().show = true;
            lineChart.EnsureChartComponent<Title>().text = "测试图表";
            lineChart.EnsureChartComponent<Title>().labelStyle.textStyle.color = Color.black;

            //添加填充区域
            lineChart.series[i].EnsureComponent<AreaStyle>();
            lineChart.series[i].areaStyle.show = true;
            lineChart.series[i].areaStyle.color = colorPalettes[i]; // 红色
            lineChart.series[i].areaStyle.toColor =colorPalettes[i+1]; // 黄色
    

            //添加数据
            Debug.Log($"当前:{serieName} 曲线数量:{strsX.Length}");
            for (int j = 0; j < strsX.Length; j++)
            {
                double value = 0;
                switch (i)
                {
                    case 0:
                        value = valueY1[j];
                        break;
                    case 1:
                        value = valueY2[j];
                        break;
                    case 2:
                        value = valueY3[j];
                        break;
                }
                lineChart.AddData(serieName, value);
            }
        }

    }
}

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

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

相关文章

【HITCSAPP 哈工大计算机系统期末大作业】 程序人生-Hello’s P2P

计算机系统 大作业 题 目 程序人生-Hello’s P2P 专 业 计算机与电子通信类 学   号 2023112915 班   级 23L0505 学 生 杨昕彦 指 导 教 师 刘宏伟 计算机科学…

DAY9 热力图和箱线图的绘制

浙大疏锦行 学会了绘制两个图&#xff1a; 热力图&#xff1a;表示每个特征之间的影响&#xff0c;颜色越深数值越大表示这两个特征的关系越紧密 箱线图&#xff1a;表示每个特征的数据分布情况 箱体&#xff08;Box&#xff09;&#xff1a; 箱体的上下边界分别表示第一四分位…

解释一下NGINX的反向代理和正向代理的区别?

大家好&#xff0c;我是锋哥。今天分享关于【解释一下NGINX的反向代理和正向代理的区别?】面试题。希望对大家有帮助&#xff1b; 解释一下NGINX的反向代理和正向代理的区别? NGINX的反向代理和正向代理的区别主要体现在它们的功能和使用场景上。下面我会详细解释它们的定义…

数学笔记一:标量、向量和矩阵基本概念辨析

一、标量 标量&#xff08;Scalar&#xff09; 是一种仅用数值大小&#xff08;即 “量值”&#xff09;就能完全描述的物理量或数学对象&#xff0c;它不具有方向属性。 例如在实数领域的正数、负数。 在物理学领域的多少斤、多少公斤、水温多少度、气温多少度都是标量。 …

vue3获取两个日期之间的所有时间

1.获取两个日期之间所有年月日 如图所示&#xff1a; 代码如下&#xff1a; <template><div class"datePicker"><el-date-pickerv-model"value1"type"daterange"range-separator"至"start-placeholder"开始时间…

Python 实现简易版的文件管理(结合网络编程)

目录 一、Python 代码实现1. 服务器端2. 客户端 二、结果展示1. 查看当前路径下的内容 ls2. 切换当前路径 cd3. 查看当前路径 pwd4. 显示根目录下的树状结构 tree5. 在当前路径下创建目录 mkdir6. 删除当前路径下的文件或目录 rm7. 复制文件 mv8. 移动文件 cp9. 用户从当前路径…

PXC集群

PXC集群 一、环境介绍二、PXC安装1、关闭默认mysql模块2、安装yum源3、准备pxc安装环境4、安装pxc5、启动mysql&#xff0c;并更改root密码 三、搭建PXC集群1、编辑/etc/my.cnf 配置文件&#xff08;1&#xff09;pxc1节点配置文件&#xff08;2&#xff09;pxc2节点配置文件&a…

线程安全问题的成因

前言 大家晚上好呀~~ 今天学习了线程不安全问题的成因。线程安全问题是十分重要的知识点&#xff0c;我想把我所学的与大家分享一波&#xff0c;希望可以帮助到有需要的人&#xff0c;同时加深自己对于线程安全问题的理解。 分析过程如下 结语 今天心情还不错~ 要坚持持续…

零基础远程连接课题组Linux服务器,安装anaconda,配置python环境(换源),在服务器上运行python代码【3/3 适合小白,步骤详细!!!】

远程连接服务器 请查阅之前的博客——零基础远程连接课题组Linux服务器&#xff0c;安装anaconda&#xff0c;配置python环境&#xff08;换源&#xff09;&#xff0c;在服务器上运行python代码【1/3 适合小白&#xff0c;步骤详细&#xff01;&#xff01;&#xff01;】&am…

unity实现wasd键控制汽车漫游

1.给汽车模型添加Box Collider和Rigidbody 2.创建脚本CarController并加载到汽车模型上 using UnityEngine; using UnityEngine.UI;public class CarController : MonoBehaviour

Python优雅执行SSH命令:10种方法+虚拟环境深度实践

引言&#xff1a;为什么选择Python操作SSH&#xff1f; SSH作为网络安全的基石&#xff0c;广泛应用于远程管理、文件传输和自动化任务。Python凭借其丰富的生态&#xff08;如paramiko、fabric&#xff09;和简洁语法&#xff0c;成为编写SSH脚本的首选语言。本文将系统梳理通…

嵌入式高级工程师面试全解:从 malloc 到 kernel panic 的系统知识梳理

在嵌入式和操作系统方向的技术面试中&#xff0c;常常会涉及一系列关于内存管理、虚拟化、系统权限、调试工具、外设通信等方面的问题。本文将基于一次真实的高级嵌入式工程师岗位面试问题&#xff0c;整理并详解所有相关技术点&#xff0c;作为一份结构清晰、知识全面的学习资…

C++(初阶)(二十)——封装实现set和map

二十&#xff0c;封装实现set和map 二十&#xff0c;封装实现set和map1&#xff0c;参数类型2&#xff0c;比较方式3&#xff0c;迭代器3.1&#xff0c;普通迭代器3.2&#xff0c;const迭代器3.3&#xff0c;set_map的迭代器实现 4&#xff0c;插入和查找5&#xff0c;特别的&a…

【MySQL】06.内置函数

1. 聚合函数 -- 统计表中的人数 -- 使用 * 做统计&#xff0c;不受 NULL 影响 mysql> select count(*) 人数 from exam_result; -------- | 人数 | -------- | 5 | -------- 1 row in set (0.01 sec)-- 使用表达式做统计 mysql> select count(name) 人数 from ex…

企业微信内部网页开发流程笔记

背景 基于ai实现企微侧边栏和工作台快速问答小助&#xff0c;需要h5开发&#xff0c;因为流程不清楚摸索半天&#xff0c;所以记录一下 一、网页授权登录 1. 配置步骤 1.1 设置可信域名 登录企业微信管理后台 进入"应用管理" > 选择开发的具体应用 > “网…

智慧在线判题OJ系统项目总体,包含功能开发思路,内部中间件,已经部分知识点

目录 回顾一下xml文件怎么写 哪个地方使用了哪个技术 MyBatis-Plus-oj的表结构设计&#xff0c; 管理员登录功能 Swagger Apifox​编辑 BCrypt 日志框架引入(slf4jlogback) nacos Swagger无法被所有微服务获取到修改的原因 身份认证三种方式: JWT(Json Web Json,一…

【MySQL】2-MySQL索引P2-执行计划

欢迎来到啾啾的博客&#x1f431;。 记录学习点滴。分享工作思考和实用技巧&#xff0c;偶尔也分享一些杂谈&#x1f4ac;。 有很多很多不足的地方&#xff0c;欢迎评论交流&#xff0c;感谢您的阅读和评论&#x1f604;。 目录 EXPLAINexplain output 执行计划输出解释重点typ…

云电脑显卡性能终极对决:ToDesk云电脑/顺网云/海马云,谁才是4K游戏之王?

一、引言 1.1 云电脑的算力革命 云电脑与传统PC的算力供给差异 传统PC的算力构建依赖用户一次性配置本地硬件&#xff0c;特别是CPU与显卡&#xff08;GPU&#xff09;。而在高性能计算和游戏图形渲染等任务中&#xff0c;GPU的能力往往成为决定体验上限的核心因素。随着游戏分…

influxdb时序数据库

以下概念及操作均来自influxdb2 官方文档 InfluxDB2 is the platform purpose-built to collect, store, process and visualize time series data. Time series data is a sequence of data points indexed in time order. Data points typically consist of successive meas…

OpenCV CUDA模块图像处理------颜色空间处理之用于执行伽马校正(Gamma Correction)函数gammaCorrection()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 cv::cuda::gammaCorrection 是 OpenCV 的 CUDA 模块中用于执行伽马校正&#xff08;Gamma Correction&#xff09;的一个函数。伽马校正通常用于…