unity可视化图表插件XCharts绘制折线图、饼图、柱状图

一、简介

一款基于UGUI的功能强大、易用、参数可配置的数据可视化图表插件。支持折线图、柱状图、饼图、雷达图、散点图、热力图等常见图表。
特性:

内置丰富示例和模板,参数可视化配置,效果实时预览,纯代码绘制。
支持折线图、柱状图、饼图、雷达图、散点图、热力图等常见图表。
支持直线图、曲线图、面积图、阶梯线图等折线图。
支持并列柱图、堆叠柱图、堆积百分比柱图、斑马柱图等柱状图。
支持环形图、玫瑰图等饼图。
支持折线图—柱状图、散点图-折线图等组合图。
支持实线、曲线、阶梯线、虚线、点线、点划线、双点划线等线条。
支持自定义主题,内置主题切换。
支持自定义图表内容绘制,提供绘制点、直线、曲线、三角形、四边形、圆形、环形、扇形、边框、箭头等绘图API。
支持PC端和手机端上的数据筛选、视图缩放、细节展示等交互操作。
支持万级大数据绘制。

二、XCharts插件下载

链接:https://pan.baidu.com/s/1ml7lTmh3hCXpL8iUMGCSXw
提取码:syq1

1.将插件导入后有两个文件夹XCharts、XChartsDemo

XCharts此文件夹存放的是所需的脚本文件

XChartsDemo 放的demo案例

2.demo介绍

(1)ugl_demo 场景介绍了MaskableGraphic一些基本使用,材质替换、大小设置、绘制背景边框、点、直线、折线等

(2)xcharts_animation 场景介绍了 折线图、柱状图、饼图等图表渐隐渐出的动画效果

(3)xcharts_demo 场景介绍了各种图表的绘制

 (4)xcharts_performance 场景测试xcharts图表数据的性能

3.图表介绍: 

我们打开XCharts——>Runtime文件,可以看到该文件夹下好多XXXChart脚本,这些脚本就是已经写好的图表:

(1)BarChart.cs 柱状图

(2)CandlestickChart.cs 蜡烛图

(3)GaugeChart.cs 仪表图

(4)HeatmapChart.cs 热图

(5)LineChart.cs 折线图

(6)LiquidChart.cs 球状液体图

(7)PieChart.cs 饼图

(8)PolarChart.cs 极区图

(9)RadarChart.cs 雷达图

(10)RingChart.cs 运行图

(11)ScatterChart.cs  散布图

 三、图表属性修改

从给的demo也能看出 XCharts 功能非常强大,绘图多样性,数据性能好。我们接下来以折线图脚本做例子 讲解一下参数:

折线图

我们创建一个空物体取名LineChart,打开XCharts——>Runtime文件,选择LineChart.cs脚本拖拽上去。

 我们来看一下Inspector窗口属性:

每一条属性展开下都有好多属性,是不是超级多,不要慌,接下来介绍一下基础的使用,其他属性我在后面会细讲。

 接下来我们做个例子:将折线图制作成下图

 1.在Cavans下创建一个LineChart空物体,修改宽度580、高度400,挂载LineChart.cs脚本,就会得到一个折线图,如下图

 2.修改背景 Background属性

 3.修改Title标题内容、字体、颜色、位置。

4.修改表内间距

5.修改X、Y轴值类型、轴颜色,  点颜色、大小,  值标签大小、样式、内容等,这里属性太多分开讲

 (1)X轴值类型、轴颜色设置

(2)点颜色、大小

(3)值标签大小、样式、内容

 

(4)Y轴设置

 Y和X轴一样,唯一不同是上图两个值的修改, 设置完后效果:

 折线图跑上面了,不要紧后面修改一下它的值就好了。

设置所有样式颜色的时候要注意,修改颜色后效果没改变应该是透明度为0导致

6.修改折线的样式、区域颜色、修改数据

(1)折线的样式

(2)区域颜色 

3.数据修改 

修改完数据后折线图就正常了。

7.修改折线点大小、位置,折线点图形样式、大小和标签样式

(1)折线点大小、位置

(2)折线点图形样式、大小

 

 (3)折线点颜色样式

 (4)标签样式修改

 

最中我们的效果完成了,如果想使用代码来控制的话,直接调用面板上的接口就可以了。

四、代码修改

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using XCharts;

public class Test : MonoBehaviour
{
    void Start()
    {
        //代码动态添加图表需要设置尺寸
        var chart = gameObject.GetComponent<LineChart>();
        if (chart == null)
        {
            chart = gameObject.AddComponent<LineChart>();
            chart.SetSize(580, 300);//代码动态添加图表需要设置尺寸
        }

        //设置标题:
        chart.title.show = true;
        chart.title.text = "Line Simple";

        //设置提示框和图例是否显示
        chart.tooltip.show = true;
        chart.legend.show = false;

        //设置是否使用双坐标轴和坐标轴类型
        chart.xAxes[0].show = true;
        chart.xAxes[1].show = false;
        chart.yAxes[0].show = true;
        chart.yAxes[1].show = false;
        chart.xAxes[0].type = Axis.AxisType.Category;
        chart.yAxes[0].type = Axis.AxisType.Value;

        //设置坐标轴分割线
        chart.xAxes[0].splitNumber = 10;
        chart.xAxes[0].boundaryGap = true;

        //清空数据,添加`Line`类型的`Serie`用于接收数据
        chart.RemoveData();
        chart.AddSerie(SerieType.Line);

        //添加10个数据
        for (int i = 0; i < 10; i++)
        {
            chart.AddXAxisData("x" + i);
            chart.AddData(0, Random.Range(10, 20));
        }

        //修改第3个数据
        chart.UpdateData(0, 3, 15);

    }
}
### 使用 `@Slf4j` 注解时编译报错找不到符号变量 log 的解决方案 当遇到使用 `@Slf4j` 注解时报错找不到符号变量 `log` 时,通常是因为 Lombok 插件未正确安装或配置不当所致。 #### 安装并启用 Lombok 插件 确保 IntelliJ IDEA 已经安装了 Lombok 插件,并启用了该插件。可以通过 IDE 设置中的插件管理来完成这一步骤[^1]。 #### 配置 Maven 或 Gradle 构建工具 对于基于模块化系统的 JDK 版本(如 JDK9 及以上),需要在项目的构建配置文件中指定 annotation processor 路径: 对于 Maven 用户,在 pom.xml 文件中加入如下配置: ```xml <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> <configuration> <annotationProcessorPaths> <path> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.36</version> </path> </annotationProcessorPaths> </configuration> </plugin> </plugins> </build> ``` 而对于 Spring Boot 项目,则不需要显式地设置版本号,只需确保依赖项存在并且刷新 Maven 即可正常工作[^3]。 #### 更新 Project Structure 设置 如果仍然存在问题,请检查项目结构 (Project Structure) 中的 Modules 和 SDKs 是否已正确设置了 Annotation Processors 支持。具体操作是在 File -> Project Structure 下找到对应的选项进行勾选[^2]。 通过上述措施应该可以有效解决由于缺少 symbol log 导致的编译错误问题。
评论 42
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值