100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > unity可视化图表插件XCharts绘制折线图 饼图 柱状图

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

时间:2022-08-10 09:23:34

相关推荐

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

一、简介

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

特性:

内置丰富示例和模板,参数可视化配置,效果实时预览,纯代码绘制。

支持折线图、柱状图、饼图、雷达图、散点图、热力图等常见图表。

支持直线图、曲线图、面积图、阶梯线图等折线图。

支持并列柱图、堆叠柱图、堆积百分比柱图、斑马柱图等柱状图。

支持环形图、玫瑰图等饼图。

支持折线图—柱状图、散点图-折线图等组合图。

支持实线、曲线、阶梯线、虚线、点线、点划线、双点划线等线条。

支持自定义主题,内置主题切换。

支持自定义图表内容绘制,提供绘制点、直线、曲线、三角形、四边形、圆形、环形、扇形、边框、箭头等绘图API。

支持PC端和手机端上的数据筛选、视图缩放、细节展示等交互操作。

支持万级大数据绘制。

二、XCharts插件下载

链接:/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);}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。