Files
XCharts/README.md

181 lines
8.8 KiB
Markdown
Raw Normal View History

2018-10-03 22:32:01 +08:00
# XCharts
2018-10-13 07:04:04 +08:00
2019-06-29 08:18:06 +08:00
An ECharts style UGUI Charting Library for Unity
2018-10-13 07:04:04 +08:00
2019-06-29 08:18:06 +08:00
[`ECharts`](https://www.echartsjs.com/examples/#chart-type-bar)风格的UGUI图表库
2019-07-03 18:48:04 +08:00
QQ交流群XCharts交流群202030963
[XCharts问答](Doc/XCharts问答.md)
[XChartsAPI手册](Doc/XChartsAPI.md)
[XCharts配置项手册](Doc/XCharts配置项手册.md)
[教程5分钟上手XCharts](Doc/教程5分钟上手XCharts.md)
2019-07-03 18:48:04 +08:00
2019-06-29 08:18:06 +08:00
## 特性
1. 内置丰富示例,参数可视化配置,效果实时预览,纯源码绘制
2019-07-21 23:10:38 +08:00
2. 支持折线图(`LineChart`)、柱状图(`BarChart`)、饼图(`PieChart`)、雷达图(`RadarChart`)、散点图(`ScatterChart`)等常用图表
2019-06-29 08:18:06 +08:00
3. 支持`Default``Light``Dark`三种默认主题切换,自定义主题
4. 支持多数据密集图表
5. 折线图通过参数可配置出:折线图、曲线图、面积图等
6. 饼图通过参数可配置出:饼图、环形图、南丁格尔玫瑰图等
## 效果图
1. `Default`主题![Default](Doc/default.png)
2. `Light`主题![Light](Doc/light.png)
3. `Dark`主题![Dark](Doc/dark.png)
## 更新日志
* 2019.10.10)增加`Settings`全局参数配置组件,开放更多参数可配置
* 2019.10.09)增加`AreaStyle`的高亮相关参数配置鼠标悬浮时高亮之前区域
* 2019.10.09)优化`DataZoom`组件,增加双指缩放
* 2019.10.05)增加`SerieLabel``LineType`给饼图配置不同类型的视觉引导线
* 2019.10.02)增加`ScatterChart`同时对`Scatter``Line`的支持,实现折线图和散点图的组合图
* 2019.10.01)重构代码,废弃`Series.series`接口,用`Series.list`代替
* 2019.10.01)增加`customDrawCallback`自定义绘制回调
2019-10-01 09:36:24 +08:00
* 2019.10.01)增加`SmoothDash`平滑虚线的支持
* 2019.09.30)增加`Serie`采样类型`sampleType`的相关配置
* 2019.09.29)增加`SerieSymbol`关于显示间隔的相关配置
2019-09-29 09:16:49 +08:00
* 2019.09.29)重构代码:
2019-10-09 09:59:44 +08:00
* `BaseChart``sampleDist`删除,`Serie`增加`lineSampleDist`
* `BaseChart``minShowDataNumber`删除,`Serie`增加`minShow`
* `BaseChart``maxShowDataNumber`删除,`Serie`增加`maxShow`
* `BaseChart``maxCacheDataNumber`删除,`Serie`增加`maxCache`
* `BaseChart``AddSerie()`接口参数调整
* `BaseChart``UpdateData()`接口参数调整
* `Axis`增加`maxCache`
* 2019.09.28)增加`LineChart``BarChart`同时对`Line``Bar`类型`Serie`的支持,实现折线图和柱状图的组合图
* 2019.09.27)增加`Axis``splitNumber`设置为`0`时表示绘制所有类目数据
* 2019.09.27)增加`SampleDist`采样距离的配置,对过密的曲线开启采样,优化绘制效率
* 2019.09.27)增加`XCharts问答``XChartsAPI接口``XCharts配置项手册`等文档
* 2019.09.26)增加`AnimationReset()`重置初始化动画接口
* 2019.09.26)优化`LineChart`的密集数据的曲线效果
* 2019.09.25)优化`SerieData`的自定义图标不与`SerieLabel`关联,可单独控制是否显示
* 2019.09.24)增加`SerieData`的自定义图标相关配置支持
* 2019.09.23)增加`Formatter`配置`Axis``AxisLabel`的格式化输出
* 2019.09.23)增加`Tooltip``FontSize``FontStyle`配置字体大小和样式
* 2019.09.23)增加`Formatter`配置`SerieLabel``Legend``Tooltip`的格式化输出
2019-09-19 19:26:05 +08:00
* 2019.09.19)增加`LineArrow`配置带箭头曲线
* 2019.09.19)增加`Tooltip``FixedWidth``FixedHeight``MinWidth``MinHeight`设置支持
2019-09-18 19:10:43 +08:00
* 2019.09.18)增加单条堆叠柱状图
* 2019.09.18)增加虚线`Dash`、点线`Dot`、点划线`DashDot`、双点划线`DashDotDot`等类型的折线图支持
* 2019.09.17)增加`AnimationEnabel()`启用或取消起始动画接口
* 2019.09.17)增加`Axis``Interval`强制设置坐标轴分割间隔
* 2019.09.16)去掉`Serie`中的旧版本数据兼容,不再支持`xData``yData`
* 2019.09.06)增加`Animation`在重新初始化数据时自启动功能
* 2019.09.06)增加`SerieLabel``Border`边框相关配置支持
* 2019.09.05)增加`PieChart``Animation`初始化动画配置支持
2019-09-03 09:49:34 +08:00
* 2019.09.03)增加`BarChart``Animation`初始化动画配置支持
* 2019.09.02)增加`LineChart``Animation`初始化动画配置支持
* 2019.08.22)增加`AxisName``Offset`偏移配置支持
* 2019.08.22)增加`AxisLine``Width`配置支持
2019-08-20 18:53:19 +08:00
* 2019.08.20)增加`SerieLabel`的背景宽高、文字边距、文字旋转的配置
* 2019.08.20)增加`BarChart``Label`配置支持
2019-08-16 00:13:01 +08:00
* 2019.08.15)增加`LineChart``Label`配置
* 2019.08.15)重构`BarChart`,移除`Bar`组件,相关参数统一放到`Serie`中配置
* 2019.08.15)重构`LineChart`,移除`Line`组件,相关参数统一放到`Serie`中配置
* 2019.08.15)发布`v0.8.3`版本
* 2019.08.14)修复`PieChart``Label`无法自动更新的问题
* 2019.08.13)修复`UpdateData`接口无法更新数据的问题
* 2019.08.07)增加`SerieSymbol``Color``Opacity`配置
2019-08-07 09:05:30 +08:00
* 2019.08.07)发布`v0.8.2`版本
* 2019.08.07)修复区域平滑折线图显示异常的问题
* 2019.08.06)修复`serie`系列数超过调色盘颜色数时获取的颜色异常的问题
* 2019.08.06)修复当`Axis``minMaxType``Custom``max`设置为`100`不生效的问题
2019-08-07 09:05:30 +08:00
* 2019.08.04)发布`v0.8.1`版本
* 2019.08.04修复从Inspector中修改数据不生效的问题
2019-08-04 18:32:28 +08:00
* 2019.08.04)发布`v0.8.0`版本
* 2019.08.04)优化`RadarChart`雷达图,增加多雷达图支持
* 2019.08.01增加代码API注释文档整理代码
* 2019.07.29)增加`Radius``Area`两种南丁格尔玫瑰图展示类型
* 2019.07.29)增加`SerieLabel`配置饼图标签,支持`Center``Inside``Outside`等显示位置
2019-07-28 00:44:53 +08:00
* 2019.07.28)增加`PieChart`多饼图支持
* 2019.07.23)优化`Theme`主题的自定义,切换主题时自定义配置不受影响
2019-07-22 19:02:28 +08:00
* 2019.07.22)增加`EffectScatter`类型的散点图
2019-07-21 23:10:38 +08:00
* 2019.07.21)增加`ScatterChart`散点图
* 2019.07.21)增加`SerieData`支持多维数据配置
* 2019.07.20)增加`Symbol`配置`Serie`标志图形的显示
* 2019.07.19)增加用代码添加动态正弦曲线的示例`Demo11_AddSinCurve`
2019-07-19 21:55:22 +08:00
* 2019.07.19)优化`Legend`的显示和控制
* 2019.07.18)优化抗锯齿,曲线更平滑
* 2019.07.18)增加`Tooltip`指示器类型,优化显示控制
* 2019.07.15)增加`Size`设置图表尺寸
* 2019.07.14)增加`二维数据`支持XY轴都可以设置为数值轴
2019-07-13 16:38:38 +08:00
* 2019.07.13)增加`双坐标轴`支持,代码改动较大
* 2019.07.10)发布`v0.5.0`版本
* 2019.07.09)增加`AxisLine`配置坐标轴轴线和箭头
* 2019.07.03)增加`AxisLabel`配置坐标轴`刻度标签`
* 2019.07.02)增加`selected`等相关参数配置`PieChart`的选中效果
* 2019.06.30)增加`SplitArea`配置坐标轴`分割区域`
* 2019.06.29)增加`AxisName`配置坐标轴`名称`
2019-06-29 08:18:06 +08:00
* 2019.06.20)增加`AreaAlpha`控制`RadarChart``Area`透明度
* 2019.06.13)增加`DataZoom`实现`区域缩放`
2019-06-29 08:18:06 +08:00
* 2019.06.01)增加`stepType`实现`LineChart``阶梯线图`
* 2019.05.29)增加`InSameBar`实现`BarChart``非堆叠同柱`
* 2019.05.29)增加`crossLabel`控制`Tooltip``十字准星指示器`
2019-06-29 08:18:06 +08:00
* 2019.05.24)增加`堆叠区域图`
* 2019.05.16)增加`AxisMinMaxType`控制坐标轴最大最小刻度
* 2019.05.15)完善数据接口
* 2019.05.14增加X轴`AxisType.Value`模式支持
* 2019.05.13)增加负数数值轴支持
* 2019.05.11)增加自定义`Editor`编辑
* 2019.03.21)增加`Tooltip`
* 2018.11.01)增加`Default``Light``Dark`三种默认主题
2019-07-13 16:38:38 +08:00
* 2018.09.05)发布`v0.1.0`版本
2019-06-29 08:18:06 +08:00
## 内置示例
### 折线图
2019-06-29 08:18:06 +08:00
1. 基础折线图
2. 负数数值轴+自定义最大最小刻度
3. XY轴互换
4. XY轴互换+区域堆叠
5. 贝塞尔曲线平滑
6. 折线图堆叠+图例
7. 堆叠区域图
8. 面积图
9. 阶梯线图
10. 阶梯线图+区域填充
11. 动态数据
12. 大数据量面积图
13. 大数据+区域缩放
2019-07-13 16:48:21 +08:00
14. 双坐标轴
15. 笛卡尔坐标系XY都为数值轴
16. 用代码添加动态的正弦曲线
17. 虚线、点线、点划线、双点划线折线图
18. 自定义绘制
### 柱状图
2019-06-29 08:18:06 +08:00
1. 基础柱状图
2. 负数数值轴+自定义最大最小刻度
3. XY轴互换
4. 坐标轴刻度与标签对齐
5. 世界人口总量
6. 堆叠条形图
7. 深圳月最低生活费组成(单位:元)
8. 非堆叠同柱
9. 5000数据
2019-09-18 19:10:43 +08:00
10. 单条堆叠柱状图
### 饼图
2019-06-29 08:18:06 +08:00
1. Customized Pie
2. 环形图
3. 环形图+默认选中
4. 南丁格尔玫瑰图
5. 某站点用户访问来源
6. 用代码添加和更新数据
### 雷达图
1. 基础雷达图
2. AQI - 雷达图
3. 自定义雷达图
4. 多雷达图
### 其他