Compare commits

...

991 Commits

Author SHA1 Message Date
monitor1394
3b7e8184b0 3.11.0 2024-06-16 21:59:31 +08:00
monitor1394
33b7e5c1a4 3.11.0 2024-06-16 19:21:25 +08:00
monitor1394
24270e5c69 3.11.0 2024-06-16 19:05:40 +08:00
monitor1394
e3fb5685bf 增加EditorData的添加、删除、上下移动操作按钮 2024-06-15 13:21:38 +08:00
monitor1394
89e7a09e64 增加Edge判断接口 2024-06-13 23:04:35 +08:00
monitor1394
ee5efa9f8d 增加DrawEdge绘制由上下坐标列表组成的边 2024-06-13 22:59:37 +08:00
monitor1394
2fe9a40f42 3.11.0-preview2 2024-06-11 08:28:46 +08:00
monitor1394
ddbd82bebf 修复AxisIndicatorLabel可能会遮挡住Tooltip的问题 2024-06-11 08:14:34 +08:00
monitor1394
549ee43a37 修复TooltipCrossAxisIndicatorLabel可能不显示的问题 (#315) 2024-06-11 08:11:27 +08:00
monitor1394
3b9af0f8ec 调整TooltipCorss重命名为Cross 2024-06-10 22:42:20 +08:00
monitor1394
caee79630b 增加Axism_MinCategorySpacing设置类目轴默认的最小类目间距 2024-06-09 22:59:38 +08:00
monitor1394
a12c98b1a5 修复TooltipCross在开启DataZoom时指示位置不准确的问题 2024-06-09 22:13:26 +08:00
monitor1394
8617475808 优化一个Chart里有多个Serie时的Tooltip显示问题 2024-06-08 13:24:24 +08:00
monitor1394
922901380e 修复SerieClone时动画异常问题 (#320) 2024-06-06 13:07:34 +08:00
monitor1394
96cb7ffc74 修复Seriestate在代码动态设置时不刷新的问题 2024-06-04 08:40:43 +08:00
monitor1394
74cf4fe4ce 优化坐标轴Tick最小间距 2024-06-03 08:13:17 +08:00
monitor1394
eb948f03d5 完善关系图初始化 2024-06-03 08:12:32 +08:00
monitor1394
6a6ab72ed8 调整XChartsHierarchy视图下的右键菜单到UI/XCharts 2024-05-29 21:58:31 +08:00
monitor1394
df66f5c7ee 增加3D坐标系显示边框参数 2024-05-29 13:14:21 +08:00
monitor1394
042f9d3c01 增加3D坐标系对类目轴的支持 2024-05-29 08:33:00 +08:00
monitor1394
1e6140a138 3.11.0-preview1 2024-05-20 08:33:09 +08:00
monitor1394
86125c597e 优化Editor下编辑性能 2024-05-19 11:02:03 +08:00
monitor1394
fc346d30fb 优化第三方数据导入 2024-05-19 11:01:46 +08:00
monitor1394
3e8bf7caee 优化Line3D绘制 2024-05-15 13:19:34 +08:00
monitor1394
4e3182edfc 增加JsonUtil工具类 2024-05-09 13:13:51 +08:00
monitor1394
b86cae6717 Merge pull request #311 from stefanbursuc/fix-gc-allocations-in-tooltiphandler
Fix for GC Allocations inside TooltipHandler
2024-05-01 22:22:04 +08:00
monitor1394
0c92d08f0d 修复ConvertXYAxis()多次调用后图表异常的问题 2024-04-23 22:16:28 +08:00
monitor1394
b1522a27d4 修复DataZoom控制多个轴时的GridCoord获取可能不正确的问题 (#317) 2024-04-22 22:35:39 +08:00
monitor1394
120c6d5408 增加GridCoord3D3D坐标系 2024-04-22 22:25:12 +08:00
monitor1394
e2120b3da6 优化DateTimeUtil时间戳转DateTime接口时区的问题 2024-04-16 22:30:04 +08:00
monitor1394
58e6108bb2 优化GridCoord在开启GridLayout时也显示Left Right Top Bottom参数 (#316) 2024-04-15 08:18:12 +08:00
monitor1394
3ef2e7c23c 修复TooltipCross在开启DataZoom的情况下label位置不正确的问题 (#315) 2024-04-14 19:09:08 +08:00
monitor1394
a361e191da 修复Candlesticks效果不对的问题 (#313) 2024-04-12 08:30:34 +08:00
Stefan Bursuc
f5a41b5119 Fix for GC Allocations inside TooltipHandler
In the case where the pointer is not in the chart, both calls to
ListPool<Serie>.Get() from inside the function UpdateTooltipData
are executed.

And because the pointer is not in the chart, m_ShowTooltip is set to
false in the last else clause.

This makes UpdateTooltip to skip all logic and miss the chance to release
the list back to the pool.
2024-04-08 11:24:28 +02:00
monitor1394
42079848dc 优化桑吉图折叠显示 2024-03-20 22:23:58 +08:00
monitor1394
4b8374b1ae 修复Pie在设置ItemStyleopacity时颜色不对的问题 (#309) 2024-03-20 13:36:31 +08:00
monitor1394
0990b11c1c 增加TooltiptriggerOn指定触发条件 2024-03-20 13:34:21 +08:00
monitor1394
99b1624b54 增加数据图的折叠和展开支持 2024-03-20 08:31:05 +08:00
monitor1394
113c3887ae 3.10.2 2024-03-11 08:12:28 +08:00
monitor1394
9f5040435f 修复Tooltip移出坐标系后还显示的问题 2024-03-11 08:04:07 +08:00
monitor1394
f21e9c6a32 修复Legendformatter在设置{d}通配符时显示可能不匹配的问题 (#304) 2024-03-11 08:04:00 +08:00
monitor1394
a071956675 修复Legendformatter在设置{d}通配符时显示可能不匹配的问题 2024-03-11 08:03:53 +08:00
monitor1394
eab4f9530b 修复Tooltiptitle从旧版本升级后可能不显示的问题 2024-03-11 08:03:48 +08:00
monitor1394
ce8b03b692 3.10.1 2024-02-21 08:38:45 +08:00
monitor1394
2505a48ac2 修复Tooltip的圆点标记不会自适应颜色的问题 2024-02-19 08:53:31 +08:00
monitor1394
74e75e93af 修复Tooltip的圆点标记不会自适应颜色的问题 2024-02-19 08:51:06 +08:00
monitor1394
4f8390b515 3.10.0 2024-02-01 13:23:04 +08:00
monitor1394
d91ebeee3a 修复divide by zero的问题 2024-01-31 22:40:50 +08:00
monitor1394
b9c5623687 修复Tooltip在设置itemFormatter-后整个不显示的问题 2024-01-31 13:21:20 +08:00
monitor1394
34b4096482 修复Attempted to divide by zero报错 #302 2024-01-30 23:40:27 +08:00
monitor1394
bc75865a5e 修复TextLimit在开启TextMeshPro后无效的问题 (#301) 2024-01-27 13:40:16 +08:00
monitor1394
c987cb1ef7 修复TextLimit在开启TextMeshPro后无效的问题 (#301) 2024-01-27 13:35:47 +08:00
monitor1394
d93f7830de 增加Bar支持X轴和Y轴都为Category类目轴 2024-01-24 13:31:06 +08:00
monitor1394
61a2da10ba 增加{y}通配符用于获取Y轴的类目名 2024-01-23 22:56:03 +08:00
monitor1394
9e39150009 增加Line支持X轴和Y轴都为Category类目轴 2024-01-23 22:55:46 +08:00
monitor1394
653b81cc48 3.10.0 2024-01-21 22:33:45 +08:00
monitor1394
e68e41a939 3.10.0 2024-01-21 21:17:34 +08:00
monitor1394
d0448a5b11 修复Animationtype代码动态修改无效的问题 2024-01-18 22:41:32 +08:00
monitor1394
daec83c4a5 调整UI组件相关代码 2024-01-16 22:29:15 +08:00
monitor1394
6aa11249c5 Editor上添加第二个X轴或Y轴时自动设置位置 2024-01-14 10:56:36 +08:00
monitor1394
9a56985b3a 增加Chart的更多快捷创建图表菜单 2024-01-13 22:37:13 +08:00
monitor1394
fff04347fa 增加Chart的更多快捷创建图表菜单 2024-01-13 22:16:16 +08:00
monitor1394
5a5ad1e108 优化图表细节 2024-01-13 22:11:01 +08:00
monitor1394
3c233d1cb1 屏蔽ChartInit()接口,动态创建图表不再需要调用 2024-01-12 13:23:46 +08:00
monitor1394
c44583772c 完善动态创建图表功能 2024-01-12 08:29:02 +08:00
monitor1394
29e9593179 增加MainComponent的order设置执行优先级 2024-01-11 22:34:18 +08:00
monitor1394
318bdcb1f2 增加BackgroundborderStyle,给图表默认设置圆角 2024-01-11 08:03:36 +08:00
monitor1394
c3489fbc1e 修复Tooltop的第一个ContentLabelStyle设置color无效的问题 2024-01-07 22:13:03 +08:00
monitor1394
91db00a173 增加BorderStyle边框样式 2024-01-01 22:57:50 +08:00
monitor1394
a3533dbc02 增加DrawRoundRectangleWithBorder接口 2024-01-01 22:55:50 +08:00
monitor1394
f1c504e81a 增加HeatmapmaxCache参数支持 2023-12-26 23:08:41 +08:00
monitor1394
178215d980 修复Line开启clip时绘制的顶点数可能反而增加的问题 2023-12-25 23:05:06 +08:00
monitor1394
cbd527316e 修复Scatter散点图部分边界数据不显示的问题 2023-12-22 17:16:21 +08:00
monitor1394
3580df9117 修复TriggerTooltip()接口在指定0或最大index时可能无法触发的问题 2023-12-21 22:41:12 +08:00
monitor1394
11bdbba286 update doc 2023-12-20 13:26:29 +08:00
monitor1394
4ed22190d6 update doc 2023-12-20 13:19:07 +08:00
monitor1394
06ef86a9d6 修复LegendLabelStyleformatter不生效的问题 2023-12-19 22:02:05 +08:00
monitor1394
3d73578063 更新FAQ 2023-12-17 22:11:35 +08:00
monitor1394
07caa54631 更新FAQ 2023-12-17 22:05:57 +08:00
monitor1394
023eeb9ea8 优化border 2023-12-16 22:34:00 +08:00
monitor1394
2431a001b1 优化border 2023-12-16 22:31:34 +08:00
monitor1394
e83eeabf9c 优化Bar的边框绘制 2023-12-16 10:03:28 +08:00
monitor1394
9c5b83dc22 修复settings的lineSmoothness用代码设置无效的问题 2023-12-14 19:33:11 +08:00
monitor1394
9d2b14afef 代码优化 2023-12-14 19:22:02 +08:00
monitor1394
63173cdce6 代码优化 2023-12-14 10:20:48 +08:00
monitor1394
922a944881 增加LegendTextLimit可限制图例显示文本的长度 2023-12-12 10:22:32 +08:00
monitor1394
53c7ddf9d4 修复Serie添加double.MaxValue时坐标绘制失败的问题 2023-12-11 13:43:03 +08:00
monitor1394
a50bda5344 增加SerieminShowLabel可隐藏小于指定值的label 2023-12-10 21:23:57 +08:00
monitor1394
e8c8ab87aa 增加桑基图相关支持 2023-12-09 23:22:00 +08:00
monitor1394
1c6904f074 增加ResetChartStatus()可主动重置图表状态 2023-12-05 22:43:49 +08:00
monitor1394
225fc69e70 3.9.0 2023-12-01 21:26:27 +08:00
monitor1394
546077459f 3.9.0 2023-12-01 21:19:24 +08:00
monitor1394
bdc6c3b289 3.9.0 2023-12-01 21:16:28 +08:00
monitor1394
bbf1dc862c 3.9.0 2023-12-01 20:54:11 +08:00
monitor1394
c841ac4a93 3.9.0 2023-12-01 20:52:57 +08:00
monitor1394
bece2eb564 修复TooltiptitleFormatter设置为{b}后显示不准确的问题 2023-12-01 08:39:27 +08:00
monitor1394
735e36d6e5 增加SerieData可单独添加Label的支持 2023-11-30 22:36:24 +08:00
monitor1394
0a19b2a6cc 修复Tooltip在对数轴时指示不准确的问题 2023-11-28 10:04:15 +08:00
monitor1394
7ea260b986 修复报错 (#293) 2023-11-25 21:57:49 +08:00
monitor1394
cdc182191b 修复ChartUpdateData()接口返回值不准确的问题 2023-11-24 08:36:54 +08:00
monitor1394
45be0748aa 修复Axis的更新数据时效果不顺畅的问题 2023-11-24 08:29:55 +08:00
monitor1394
1f970cbb36 增加AxisAnimation支持动画效果 2023-11-24 08:29:42 +08:00
monitor1394
4aee1b0a92 3.9.0 2023-11-21 08:34:18 +08:00
monitor1394
079d1030ae 完善注释和文档 2023-11-16 13:15:09 +08:00
monitor1394
ddf44a8c1d 取消Legendformatter,用LabelStyle的代替 2023-11-16 08:40:28 +08:00
monitor1394
f94f678661 完善注释和文档 2023-11-16 08:20:26 +08:00
monitor1394
9816c34701 3.8.2 2023-11-14 13:23:32 +08:00
monitor1394
b959b15c71 完善LabelStyleformatter的注释和文档(#291) 2023-11-14 13:18:31 +08:00
monitor1394
c9ac0daed9 修复Documentation部分注释生成文档不完整的问题 (#290) 2023-11-11 23:36:28 +08:00
monitor1394
65684f2952 调整中英文注释的分隔符为|| 2023-11-11 23:32:24 +08:00
monitor1394
509bd97741 修复Legendformatter在数据变更时没有自动刷新的问题 2023-11-11 22:46:08 +08:00
monitor1394
83db4dd951 修复SerieEventDatavalue一直是0的问题 (#287) 2023-11-05 20:09:28 +08:00
monitor1394
a730404935 修复Bar设置渐变色时鼠标移出效果异常的问题 (#285) 2023-11-03 08:25:10 +08:00
monitor1394
f51e5f1859 优化SerieData设置ignoreformatter的忽略问题 2023-11-02 22:37:11 +08:00
monitor1394
e8204fc41e update doc 2023-11-02 08:43:08 +08:00
monitor1394
304726debf 增加MarkLineonTop设置是否显示在最上层 2023-11-01 22:41:47 +08:00
monitor1394
d8ecb94dd9 完善UIComponent 2023-11-01 08:53:18 +08:00
monitor1394
573f9efcaf 修复Pie有0数据时Label的位置异常的问题 2023-10-21 22:08:03 +08:00
monitor1394
985f70c3c9 增加Axis的对数轴支持子刻度 2023-10-21 13:29:50 +08:00
monitor1394
68d5bc36d6 优化Log对数轴 2023-10-19 23:06:26 +08:00
monitor1394
6b931497ab 修复Pie设置玫瑰图时引导线异常的问题 2023-10-19 22:51:22 +08:00
monitor1394
4bbedc8ef6 update doc 2023-10-17 22:16:37 +08:00
monitor1394
7f2de53af9 优化UIComponent 2023-10-17 21:39:57 +08:00
monitor1394
48a4fb470a 增加数据刷新接口SetDataDirty() 2023-10-17 14:51:16 +08:00
monitor1394
c67d3a3a80 3.8.2 2023-10-16 08:15:27 +08:00
monitor1394
6a5026e907 修复Line设置AnimationAlongPath时动画异常的问题 (#281) 2023-10-15 21:04:01 +08:00
monitor1394
38716facba 修复MarkLine指定yValue时对数值轴无效的问题 2023-10-13 08:15:25 +08:00
monitor1394
86f0ae5739 修复MarkLine指定yValue时对数值轴无效的问题 2023-10-12 21:55:16 +08:00
monitor1394
fea5ab34c0 修复SerieshowDataDimension设置无效的问题 2023-10-11 22:21:16 +08:00
monitor1394
789ab008f6 update doc 2023-10-11 08:32:48 +08:00
monitor1394
7f525ebaf0 update LICENSE 2023-10-11 08:32:21 +08:00
monitor1394
4fd7650726 3.8.1 2023-10-02 10:22:10 +08:00
monitor1394
66c01d55b9 修复Bar在水平方向时Label设置为Bottom不生效的问题 2023-09-29 23:52:50 +08:00
monitor1394
54bb49dfa7 3.8.1 2023-09-23 22:25:55 +08:00
monitor1394
c065245e00 增加Line平滑曲线对Dash虚线的支持 2023-09-22 08:34:06 +08:00
monitor1394
51697a54f4 修复Pie无数据时绘制异常的问题 (#278) 2023-09-21 08:11:31 +08:00
monitor1394
00123e0f94 修复Pie无数据时绘制异常的问题 (#279) 2023-09-21 08:10:00 +08:00
monitor1394
8c840404e0 修复Tooltip在类目轴无数据时异常报错的问题 (#279) 2023-09-16 20:57:39 +08:00
monitor1394
c5d7e5369d 修复Pie无数据时绘制异常的问题 2023-09-16 10:04:59 +08:00
monitor1394
8750bbc22a 增加PieradiusGradient可设置半径方向的渐变效果 2023-09-12 22:42:36 +08:00
monitor1394
680b9d5c20 update README.md 2023-09-12 08:03:19 +08:00
monitor1394
23dee8bd44 update support.md 2023-09-09 23:28:27 +08:00
monitor1394
6c1b402d2d 优化LabelLinelineEndXPie中的表现 2023-09-05 23:21:17 +08:00
monitor1394
c6e78f9cb9 修复RingTriggerTooltip()接口无效的问题 2023-09-05 13:34:11 +08:00
monitor1394
7402925512 修复Radar数据全为0时绘制报错的问题 2023-09-05 13:13:44 +08:00
monitor1394
5d5f32b55e 3.8.0 2023-09-03 23:53:00 +08:00
monitor1394
c8cb47da63 增加Example_Test调试用 2023-09-03 22:34:43 +08:00
monitor1394
66d666192a 完善Example01_RandomData 2023-09-03 22:32:45 +08:00
monitor1394
2a815e54db 增加Serie的totalDataIndex 2023-09-03 22:31:00 +08:00
monitor1394
367844a86c 开启部分Serie的MaxCache设置 2023-09-03 21:43:38 +08:00
monitor1394
910b9194ac 修复Scatter散点图渐出动画异常的问题 2023-09-03 11:07:06 +08:00
monitor1394
eb196a237f 优化Animation 2023-09-02 10:43:10 +08:00
monitor1394
71038a9f88 优化RadarCoord可通过AxisName控制label是否显示 2023-09-01 08:04:29 +08:00
monitor1394
a6ba17ee00 增加TooltipAuto自动设置显示类型和触发类型 2023-09-01 08:01:27 +08:00
monitor1394
9deb120446 增加RinggridIndex支持设置指定网格 2023-08-29 22:28:18 +08:00
monitor1394
8df1dbe0fb 增加PieRadargridIndex支持设置指定网格 2023-08-29 22:20:29 +08:00
monitor1394
e4fbe5670f 增加GridLayout网格布局组件 2023-08-29 18:30:11 +08:00
monitor1394
e0f6b8c2dc update FUNDING 2023-08-25 13:29:02 +08:00
monitor1394
32b2137b87 修复MarkLine多个时只显示一个Label的问题 2023-08-25 13:22:24 +08:00
monitor1394
dc46477c15 修复MarkLine在开启Clip后还绘制在坐标系外的问题 2023-08-25 07:39:10 +08:00
monitor1394
d6f1c82a08 更新日志 2023-08-24 08:17:22 +08:00
monitor1394
267cb7472c 优化DataZoom开启时的新增动画表现 2023-08-24 08:13:42 +08:00
monitor1394
6d04cac38b 优化YAxis在数据全为0时默认设置0-1的范围 2023-08-24 07:42:19 +08:00
monitor1394
0331804a85 修复YAxisLabel可能会重复的问题 2023-08-23 22:02:00 +08:00
monitor1394
11eccbc39b 修复Bar隐藏时表现异常的问题 2023-08-22 23:48:57 +08:00
monitor1394
80d596a721 优化Bar的Tooltip表现 2023-08-22 23:43:33 +08:00
monitor1394
637fde799e 更新文档 2023-08-22 23:14:05 +08:00
monitor1394
9a198b35b1 优化Zebra斑马柱图的绘制表现 (#276) 2023-08-22 23:13:10 +08:00
monitor1394
3476c56eb6 修复Scatter动态添加数据时图表不及时刷新的问题 2023-08-22 08:16:12 +08:00
monitor1394
d9e1c1211c update readme 2023-08-21 23:20:33 +08:00
monitor1394
9fab42a9e7 update readme 2023-08-21 23:16:05 +08:00
monitor1394
d69327e301 更新订阅服务 2023-08-19 08:35:08 +08:00
monitor1394
2566641b5f 更新订阅服务 2023-08-19 08:25:20 +08:00
monitor1394
fea083035f 更新订阅服务 2023-08-19 08:18:48 +08:00
monitor1394
938ae62905 增加ChartLabel的IsActiveByScale接口 2023-08-17 19:51:48 +08:00
monitor1394
8eec52939c Merge pull request #274 from Ambitroc/ambitroc
修复Chart在特定情况下销毁时UGUI报错问题
2023-08-17 19:41:58 +08:00
zhengzhipeng
151a2ed01f 修复Chart在特定情况下销毁时UGUI报错问题 2023-08-17 15:05:55 +08:00
monitor1394
3aa6daf97c update doc 2023-08-16 08:23:56 +08:00
monitor1394
c3c6eb5719 Merge pull request #273 from Ambitroc/ambitroc
修复数据在-1到1之间坐标轴显示错误问题
2023-08-15 21:34:21 +08:00
zhengzhipeng
4fde95eab7 修复数据在-1到1之间坐标轴显示错误问题 2023-08-15 11:47:41 +08:00
monitor1394
3d4360a10a remove meta 2023-08-14 22:33:31 +08:00
monitor1394
64187fea3f 更新asmdef 2023-08-14 21:58:30 +08:00
monitor1394
0c187b6ff9 修复XCharts本地开启TextMeshProNewInputSystem后更新版本会报错的问题 (#272) 2023-08-14 21:57:17 +08:00
monitor1394
71c8bc1499 修复Chart在运行时被删除时会异常报错的问题 (#269) 2023-08-12 22:18:25 +08:00
monitor1394
d0d5c2a101 修复DataZoom开启时可能会导致无法添加数据的问题 2023-08-11 08:41:19 +08:00
monitor1394
95dddd9448 修复SerieData单独添加ItemStyle后设置itemFormatter不生效的问题 2023-08-11 07:41:02 +08:00
monitor1394
9ed80d3b59 优化BarChartTooltipTriggerItem时的表现 2023-08-10 13:19:05 +08:00
monitor1394
01a49de373 增加Axis可通过设置IconStylecolorclear来实现动态图标颜色的支持 2023-08-09 13:27:03 +08:00
monitor1394
2e2ad0a1f2 增加SymbolEmptyTriangleEmptyDiamond的支持 2023-08-09 08:39:44 +08:00
monitor1394
5356e2304c 增加PieLabelLinelineEndX的支持 2023-08-08 13:24:37 +08:00
monitor1394
0d1d2460a0 修复Tooltip不显示的问题 2023-08-08 06:03:54 +08:00
monitor1394
f88ac6b4c4 整理Examples的代码,删除不必要的用例 2023-08-05 09:41:33 +08:00
monitor1394
9d3d8543a5 增加LabelLinelineEndX可设置引导线固定X位置的支持 2023-08-04 08:39:05 +08:00
monitor1394
ea819bfa42 增加RingavoidLabelOverlap避免文本堆叠的支持 (#247) 2023-08-04 08:26:21 +08:00
monitor1394
618fe0fb01 完善ChartonSerieEnteronSerieExitonSerieClick回调 2023-08-03 07:52:20 +08:00
monitor1394
43ba7d47c5 修复BarChartonSerieEnteronSerieExit回调无效的问题 2023-08-02 08:31:58 +08:00
monitor1394
e3e01587ab 增加SymbolPlus加号和Minus减号的支持 2023-08-02 07:23:28 +08:00
monitor1394
f36ca34055 增加SymbolEmptyTriangleEmptyDiamond的支持,优化Symbol表现效果 2023-07-31 13:32:53 +08:00
monitor1394
0ffc6d7efe 优化Line的默认配置效果 2023-07-31 07:29:53 +08:00
monitor1394
ec89828c67 增加Serie部分配置修改时的自刷新 2023-07-28 08:39:56 +08:00
monitor1394
18c0d3218d 修复饼图在Inspector上修改相关参数后不刷新的问题 2023-07-28 08:09:31 +08:00
monitor1394
f867ac7efd 增加AnimationHiding隐藏动画 2023-07-28 08:08:49 +08:00
monitor1394
fc7655fd76 增加SerieminRadius可设置最小半径 2023-07-27 07:58:10 +08:00
monitor1394
0c09d40654 完善Pie饼图的交互动画效果 2023-07-27 07:17:37 +08:00
monitor1394
758d578ad2 增加MLValue多样式数值 2023-07-26 08:41:06 +08:00
monitor1394
318b4146a9 增加XLog日志系统 2023-07-26 07:51:59 +08:00
monitor1394
ea4dac65e1 完善Pie饼图的交互动画效果 2023-07-25 13:19:06 +08:00
monitor1394
b27f0ec6ec 完善Pie饼图的交互动画效果 2023-07-19 13:23:57 +08:00
monitor1394
f5e8ba4082 完善Pie饼图的交互动画效果 2023-07-18 13:23:41 +08:00
monitor1394
816e26f517 增加AnimationInteraction交互动画配置支持 2023-07-17 22:15:54 +08:00
monitor1394
58d6d52747 增加AnimationInteraction交互动画配置支持 2023-07-14 08:14:00 +08:00
monitor1394
ccd71710ce 3.8.0 2023-07-12 13:20:54 +08:00
monitor1394
e103c87d10 重构Animation动画系统,增加Addition新增动画支持 2023-07-12 13:18:58 +08:00
monitor1394
e515908f9b 重构Animation动画系统,增加Addition新增动画支持 2023-07-12 08:28:42 +08:00
monitor1394
eca0c6ea46 3.8.0 2023-07-11 23:11:05 +08:00
monitor1394
1229c1bfa2 重构Animation动画系统,增加Addition新增动画支持 2023-07-11 23:05:31 +08:00
monitor1394
f678477c88 增加AnimationAddition动画支持 2023-07-11 13:32:50 +08:00
monitor1394
0adc9e71e5 增加Animation的添加动画支持 2023-07-04 13:07:44 +08:00
monitor1394
bc1596f8d3 增加PolarCoodindicatorLabelOffset设置指示文本偏移的支持 2023-07-03 23:10:35 +08:00
monitor1394
4a754c0021 增加PolarCoodindicatorLabelOffset设置指示文本偏移的支持 2023-06-30 08:25:14 +08:00
monitor1394
2c382fda00 修复AxisIndicatorLabel的背景颜色可能不正常的问题 2023-06-30 07:55:21 +08:00
monitor1394
45159b186f 修复AxisIndicatorLabel无法自定义color的问题 2023-06-30 07:48:44 +08:00
monitor1394
00274567cf 修复AxisLabelformatterFunction在数值轴时value不对的问题 2023-06-12 08:05:10 +08:00
monitor1394
42c2c91f03 3.7.0 2023-06-09 08:04:14 +08:00
monitor1394
9c26716e7c 3.7.0 2023-06-08 08:18:01 +08:00
monitor1394
c8a5560a67 修复Serie的名字带_线导致Legend无法触发的问题 (#252) 2023-06-07 08:05:57 +08:00
monitor1394
ad707ec14d Merge pull request #260 from svr2kos2/master
修复Serie名中包含下划线时,会导致Legend组件无法点击的问题
2023-06-04 22:28:53 +08:00
monitor1394
b6c0962ff3 更新文档 2023-06-04 21:52:37 +08:00
monitor1394
86e66984d4 增加HelpDoc帮助文档跳转 2023-06-04 21:52:23 +08:00
svr2kos2
04d646ed8c 修复Serie名中包含下划线时,会导致Legend组件无法点击的问题
由于实现方法是index和name使用下划线合并到物体名称中, 之后在接受事件时用下划线分割后获取index和name. 修改限制分割为2部分
2023-05-30 14:16:57 +08:00
monitor1394
0f83a70b54 更新文档 2023-05-30 07:32:24 +08:00
monitor1394
6b6bf9d9da 更新文档 2023-05-28 22:42:49 +08:00
monitor1394
4c1432a535 Line支持Clip 2023-05-20 08:52:02 +08:00
monitor1394
bab788d4cb Line支持Clip 2023-05-11 08:34:04 +08:00
monitor1394
fab683f5e1 增加AxisMinMaxAuto范围类型 2023-05-10 23:29:31 +08:00
monitor1394
29c9f59762 Line支持Clip 2023-05-09 13:25:42 +08:00
monitor1394
c29a22c576 Line支持Clip 2023-05-09 07:17:27 +08:00
monitor1394
5568c2fd76 3.7.0 2023-05-08 23:31:03 +08:00
monitor1394
5c231514a5 Line支持Clip 2023-05-08 23:24:50 +08:00
monitor1394
93abffaaaa DataZoom的minShowNum默认设置为2 2023-05-08 23:23:11 +08:00
monitor1394
a9c801c077 优化AxisMinMax类型范围计算 2023-05-04 23:33:45 +08:00
monitor1394
2d35f77740 修复AxisLabel在数据都是小于1的浮点数时显示Label格式不对的问题 2023-05-04 13:25:29 +08:00
monitor1394
529c784ee2 修复Theme在修改默认主题的参数后运行被重置的问题 2023-05-04 08:14:41 +08:00
monitor1394
fdd686b038 增加Symbol选择Custom类型时的Warning提示 2023-05-04 07:57:04 +08:00
monitor1394
36d629b29a 修复DataZoom在多个图表时可能异常的问题 (#252) 2023-04-15 08:45:27 +08:00
monitor1394
59335786df 修复Tooltip在只有一个数据时可能异常的问题 2023-04-14 20:53:31 +08:00
monitor1394
0af76517e1 增加BaseChartTriggerTooltip()接口尝试触发ToolTip 2023-04-14 13:35:45 +08:00
monitor1394
674d937104 优化RadarCood设置startAngle时文本也跟随调整位置 2023-04-12 22:57:12 +08:00
monitor1394
a038317c6e 增加Radar对通配符{b}的支持 2023-04-12 22:50:05 +08:00
monitor1394
5fe12dcde7 修复动态添加组件时Inspector可能异常的问题 2023-04-11 23:05:10 +08:00
monitor1394
f00eb2147d 修复动态添加组件时Inspector可能异常的问题 2023-04-11 08:00:06 +08:00
monitor1394
76238d7d7e 3.6.0 2023-04-02 09:23:25 +08:00
monitor1394
c53be4b5f9 3.6.0 2023-04-01 23:05:47 +08:00
monitor1394
8b320e9bc9 调整Serie的smoothLimit默认为false 2023-03-31 07:12:42 +08:00
monitor1394
5757049e74 完善Pyramid的Tooltip检测 2023-03-21 08:12:20 +08:00
monitor1394
d196551756 3.6.0 2023-03-20 22:00:02 +08:00
monitor1394
d7223f6790 3.6.0 2023-03-20 21:59:12 +08:00
monitor1394
a50b58d48e 增加UI组件支持 2023-03-20 21:56:56 +08:00
monitor1394
a0db57bdf2 支持数据的循环变更动画 2023-03-20 21:38:58 +08:00
monitor1394
3dfa5487ee 修复TooltiptitleFormater设置{b}可能不生效的问题 2023-03-15 13:04:48 +08:00
monitor1394
bddbe600ce Merge pull request #250 from Ambitroc/master
修复BarChart在数据为0时,Bar背景不绘制问题
2023-03-14 21:37:01 +08:00
Ambitroc
3073926d73 修复BarChart在数据为0时,Bar背景不绘制问题 2023-03-14 13:31:40 +08:00
monitor1394
49e9066334 增加LabelStyleautoRotate可设置有角度的竖版文本的自动旋转 2023-03-13 07:21:00 +08:00
monitor1394
372ed1de58 增加LabelStyleautoRotate可设置有角度的竖版文本的自动旋转 2023-03-12 22:57:37 +08:00
monitor1394
dbb867e0ab 增加LabelStyleautoRotate可设置有角度的竖版文本的自动旋转 2023-03-12 22:56:36 +08:00
monitor1394
adbd88c411 Merge pull request #248 from Ambitroc/master
支持除鼠标以外其他输入方式的Point位置获取,比如VR项目
2023-03-10 11:46:13 +08:00
Ambitroc
99b3d24366 支持除鼠标以外其他输入方式的Point位置获取,比如VR项目 2023-03-10 10:43:47 +08:00
monitor1394
6f69af3945 增加API文档的since 2023-03-09 22:51:09 +08:00
monitor1394
c6e38f2003 增加API文档的since 2023-03-09 22:49:07 +08:00
monitor1394
e0f4ed946d 增加回调API文档 2023-03-09 22:39:05 +08:00
monitor1394
465af108aa 增加ChartonSerieClickonSerieDownonSerieEnteronSerieExit回调 2023-03-09 21:31:26 +08:00
monitor1394
bf152a3a71 增加LegendPositions可自定义图例的位置 2023-03-04 21:09:50 +08:00
monitor1394
64c9b97eb9 修复Animation变更动画可能无效的问题 2023-03-03 22:41:00 +08:00
monitor1394
c42ca0f097 修复Legend点击时SerieLabel不刷新的问题 2023-02-28 13:11:18 +08:00
monitor1394
8c6d013341 增加DataZoomstartEndFunction委托 2023-02-26 22:49:19 +08:00
monitor1394
398fee2d97 修复TMP下报错 2023-02-22 22:08:40 +08:00
monitor1394
33246c2a1f update doc 2023-02-15 21:47:08 +08:00
monitor1394
b102fed9fe update doc 2023-02-14 13:18:39 +08:00
monitor1394
9c069296ed update doc 2023-02-13 07:22:07 +08:00
monitor1394
9f94541b9e 转移inputsystem文档到主站仓库 2023-02-13 07:21:48 +08:00
monitor1394
7a367d24ab 重构ChartHelper.GetOrAddComponent接口 2023-02-13 07:20:50 +08:00
monitor1394
4964bca341 重构Component相关代码,调整API接口 2023-02-12 21:22:53 +08:00
monitor1394
22b167981b update doc 2023-02-10 13:41:37 +08:00
monitor1394
80d9087084 优化Axis的数值Label的默认显示格式 2023-02-10 13:23:38 +08:00
monitor1394
d6630ef5bf update doc 2023-02-08 08:28:21 +08:00
monitor1394
5e3bc3ff15 增加DataZoomstartLockendLock参数支持锁定 2023-02-08 08:22:39 +08:00
monitor1394
3d09d82abd 修复DataZoom开启时X轴Label可能会显示在图表外的问题 2023-02-02 08:31:15 +08:00
monitor1394
22715dab95 优化SerieDataignore设置时的忽略数据判断 2023-02-02 07:58:50 +08:00
monitor1394
ace8537650 修复XChartsMgr.ContainsChart()接口异常 2023-02-01 21:00:37 +08:00
monitor1394
d7c6bf59ef Merge pull request #242 from Bian-Sh/master
增加`InputSystem`支持
2023-01-31 08:12:50 +08:00
边上海
c9cd4ee38a 同步更新部分示例代码对按键的读取逻辑
简化了部分协同程序的使用逻辑
2023-01-30 21:31:40 +08:00
边上海
633456ada0 将 inputsystem 支持功能添加到 xchart 菜单
顺便简化了 tmp 支持相关逻辑
2023-01-30 21:31:40 +08:00
边上海
7fbaf7af70 新增对 InputSystem 的支持
Update BaseGraph.cs

Update XCharts.Runtime.asmdef
2023-01-30 19:15:14 +08:00
monitor1394
e90d7d61d9 修复Inspector上移除Component后图表没有及时刷新的问题 (#241) 2023-01-11 08:12:42 +08:00
monitor1394
bda6fc7978 修复Pie在最后的几个数据都为0时Label显示不正常的问题 (#240) 2023-01-06 22:51:02 +08:00
monitor1394
8288e75445 优化gameObject被Destory后的判断 2023-01-06 08:35:16 +08:00
monitor1394
6ace71f8db 删除SerieMarkColor,增加ItemStyleMarkColor 2023-01-03 21:07:28 +08:00
monitor1394
a4aabb5bbe 3.6.0 2022-12-30 22:30:42 +08:00
monitor1394
d90a0d69b2 增加EditorList+添加编辑功能 2022-12-30 22:13:03 +08:00
monitor1394
c17d83ae6d 修复UpdateXYData()接口影响数据精度的问题 (#238) 2022-12-29 20:57:56 +08:00
monitor1394
317ffc4d99 修复Pie只有一个数据时设置border后显示异常的问题 (#237) 2022-12-28 18:17:56 +08:00
monitor1394
bc6c387db3 调整Covert重命名为Convert 2022-12-22 22:26:10 +08:00
monitor1394
d9053db2e3 修复Covert XY Axis后Y轴的Label显示异常的问题 2022-12-22 22:15:58 +08:00
monitor1394
d7cfda2521 代码优化 2022-12-22 21:51:08 +08:00
monitor1394
a5aa630b74 修复AxisValue轴在某些情况下计算数值范围不准确的问题 2022-12-12 13:41:04 +08:00
monitor1394
ce1691e1ce 优化Legendformatter支持{h}通配符 2022-12-12 13:15:29 +08:00
monitor1394
a3a25fe7c6 修复Legendformatter设置为固定值时显示不正常的问题 2022-12-12 07:29:30 +08:00
monitor1394
d4a3886530 增加AreaStyletoTop参数可设置折线图渐变色是到顶部还是到实际位置 2022-12-08 07:32:33 +08:00
monitor1394
927644fb10 增加Formatter的文本通配符{h}支持设置当前颜色值 2022-12-07 13:19:06 +08:00
monitor1394
d67a922a74 整理和重构代码 2022-12-07 13:16:06 +08:00
monitor1394
84a8e6ca19 v3.5.0 2022-12-01 21:43:46 +08:00
monitor1394
858ad55a35 v3.5.0 2022-12-01 21:29:38 +08:00
monitor1394
bfc4ff39fb v3.5.0 2022-12-01 21:05:56 +08:00
monitor1394
7603d60ea0 publish v3.5.0 2022-12-01 08:35:14 +08:00
monitor1394
8078e1c54f 更新文档 2022-11-30 20:42:12 +08:00
monitor1394
59c9d758e1 增加SeriebarMaxWidth可设置Bar的最大宽度 2022-11-30 09:39:41 +08:00
monitor1394
7ea0fbd66d 优化TooltipShadow绘制不超出图表范围 2022-11-30 09:31:39 +08:00
monitor1394
5f11f7d6e3 修复Tooltip指示的Serie数据项索引异常的问题 2022-11-29 22:38:08 +08:00
monitor1394
5879c99995 优化AxisAxisName的偏移设置 2022-11-28 09:26:52 +08:00
monitor1394
4356111e0c 优化AxisAxisName的偏移设置 2022-11-27 17:40:56 +08:00
monitor1394
f2001fbc82 优化Comment的位置,用Location代替Position 2022-11-27 17:28:37 +08:00
monitor1394
906b6ed4c7 update doc 2022-11-27 16:54:32 +08:00
monitor1394
32f98b6d5a 优化TooltipLineStyle支持设置Shadow时的颜色 2022-11-27 16:54:09 +08:00
monitor1394
b6702be558 优化LabelLinesymbol默认不显示 2022-11-26 12:10:59 +08:00
monitor1394
69db61c7b6 修复LineChartXY都为数值轴时添加无序数据显示异常的问题 2022-11-26 12:02:56 +08:00
monitor1394
da10188c6b 修复DataZoom从右往左框选时异常的问题 2022-11-26 10:40:12 +08:00
monitor1394
5593210cc6 [doc] update doc 2022-11-20 22:25:19 +08:00
monitor1394
8abd486fcd 调整UdpateXAxisIcon()接口重命名为UpdateXAxisIcon() (#235) 2022-11-20 20:24:22 +08:00
monitor1394
051dbb50b1 [doc] update doc 2022-11-20 20:18:20 +08:00
monitor1394
30e6e6908c [doc] update doc 2022-11-19 21:33:46 +08:00
monitor1394
be2e8f14cf [doc] update doc 2022-11-19 21:29:47 +08:00
monitor1394
56f0ff64b9 [doc] update doc 2022-11-19 21:24:08 +08:00
monitor1394
8a7f0c6533 增加PieLabelLine支持Symbol 2022-11-14 21:49:53 +08:00
monitor1394
8c0eb970d3 [feature][datazoom] 增加DataZoomMarqueeStyle支持框选区域 2022-11-12 21:32:08 +08:00
monitor1394
5e234dc408 [feature][datazoom] 增加DataZoomMarqueeStyle支持框选区域 2022-11-12 21:27:52 +08:00
monitor1394
26ef85ce6f [fix][comment] fix null error for comment 2022-11-12 08:19:51 +08:00
monitor1394
6d287f6678 优化Radar在类型为Single时的区域颜色填充效果 2022-11-10 07:12:22 +08:00
monitor1394
15eddd21d5 [doc] update doc 2022-11-06 10:23:28 +08:00
monitor1394
29722998e4 修复TooltipitemFormatter设置通配符{d}后异常的问题 2022-11-04 19:02:55 +08:00
monitor1394
faa5bc7cd8 check null 2022-11-02 07:20:00 +08:00
monitor1394
eb2c3d8560 v3.4.0 2022-11-01 07:21:06 +08:00
monitor1394
0c91f46aeb v3.4.0 2022-11-01 07:03:14 +08:00
monitor1394
7d16cb2017 更新教程 2022-10-30 20:56:18 +08:00
monitor1394
bdb171c4e6 增加API:AddData(),ClearSerieData(),ClearComponentData() 2022-10-30 20:56:05 +08:00
monitor1394
d7ebfb1f41 [feature] 增加AxisindicatorLabel,移除TooltipindicatorLabelStyle (#226) 2022-10-30 10:37:10 +08:00
monitor1394
c9d554d184 [feature] 增加AxisindicatorLabel,移除TooltipindicatorLabelStyle (#226) 2022-10-30 10:28:17 +08:00
monitor1394
e0974fffbe [feature] 增加SeriemarkColor可设置标识颜色用于LegendTooltip的展示 (#229) 2022-10-29 18:25:20 +08:00
monitor1394
cc63764eef v3.4.0 2022-10-28 07:20:20 +08:00
monitor1394
687fc0d495 update README.md 2022-10-27 07:27:07 +08:00
monitor1394
ce4e88c51c 增加RadarCoordstartAngle可设置Radar起始角度 2022-10-26 08:04:44 +08:00
monitor1394
42a77a9439 [fix] 修复ChartLayout布局下时Label显示不正常的问题 (#231) 2022-10-21 22:56:16 +08:00
monitor1394
bbab8d9b75 修复Unity2019.2上的兼容问题 2022-10-21 12:37:00 +08:00
monitor1394
b1eae7045b [improve][axis] improve max value and division of y axis 2022-10-18 08:33:12 +08:00
monitor1394
a78eed9c5c [fix] fix axis label error when datazoom enable (#227) 2022-10-15 23:00:20 +08:00
monitor1394
a9fefae642 [feature][datazoom] datazoom support value axis 2022-10-14 07:10:04 +08:00
monitor1394
f6ad852a44 [fix][pie] fix pie draw error when set border (#225) 2022-10-13 13:26:25 +08:00
monitor1394
53610b53ca [fix] Fixed Download interface caused the iOS platform to fail to build 2022-10-13 07:52:47 +08:00
monitor1394
e1f20e0796 [feature][animation] add UnscaledTime for animation #223 2022-10-12 08:35:23 +08:00
monitor1394
ab8ced4aed update doc 2022-10-11 07:00:35 +08:00
monitor1394
0662f62cd1 [feature] Add smoothLimit for Line 2022-10-10 07:07:57 +08:00
monitor1394
5ed6ee1d2a [fix] fix tooltip display error when serie is hide 2022-10-05 16:27:40 +08:00
monitor1394
99769da035 [fix] fix divide by zero exception 2022-09-30 16:35:53 +08:00
monitor1394
75bf6e0e6c v3.3.0 2022-09-28 08:20:10 +08:00
monitor1394
aec3e59aca [improve][Axis] improve default split number 2022-09-26 22:15:49 +08:00
monitor1394
1141208407 v3.3.0 2022-09-26 08:38:33 +08:00
monitor1394
a9fe1f53b1 [doc] update doc 2022-09-25 22:41:13 +08:00
monitor1394
7f27325ce1 [refactor]remove warning 2022-09-25 22:40:30 +08:00
monitor1394
4c89bda4b9 [improve][Parallel] improve ParallelChart 2022-09-23 08:38:56 +08:00
monitor1394
bd9a0df52b [feature][API] add SaveAsImage() 2022-09-22 08:37:56 +08:00
monitor1394
eba8986f18 [fix] fix InsertSerie() 2022-09-21 07:18:54 +08:00
monitor1394
95c0bcdb75 [fix] fix InsertSerie() 2022-09-21 07:12:59 +08:00
monitor1394
4b8ca2e5e1 [improve][line] improve line in polar 2022-09-21 06:59:57 +08:00
monitor1394
f0d6316c20 [improve][axis] support showStartLine and showEndLine in AngleAxis and RadiusAxis 2022-09-21 06:59:34 +08:00
monitor1394
ae35a4d7e6 [feature][polar] support heatmap in polar 2022-09-20 13:16:22 +08:00
monitor1394
4e05759c3c [feature][polar] support multiple bar and stack bar in polar 2022-09-19 13:20:34 +08:00
monitor1394
ba9faa8bc6 [feature][polar] support bar and ring polar 2022-09-16 08:03:14 +08:00
monitor1394
afbfa20fd9 [feature][polar] support circular polar 2022-09-14 07:13:45 +08:00
monitor1394
ac7628ce68 [bug] fix editor auto refresh bug 2022-09-09 13:19:22 +08:00
monitor1394
dd6833d322 [feature][ring] support LabelLine 2022-09-08 08:00:13 +08:00
monitor1394
a5e13794e8 [feature][symbol] add minSize and maxSize for SerieSymbol 2022-09-07 07:14:22 +08:00
monitor1394
16d055abc0 [feature][axis] add showStartLine and showEndLine for AxisSplitLine 2022-09-06 22:54:40 +08:00
monitor1394
83744777c5 [feature][heatmap] support symbol 2022-09-06 13:12:50 +08:00
monitor1394
ccc5110e8e [feature][heatmap] support heatmapType 2022-09-06 07:22:04 +08:00
monitor1394
ce702fd1e3 [improve][tooltip] improve tooltip for heatmap 2022-09-05 13:18:00 +08:00
monitor1394
a44eca0f91 [feature][pie] support onPointerEnterPie 2022-09-02 08:33:34 +08:00
monitor1394
8bd0c23e19 [improve][heatmap] improve heatmap chart 2022-09-02 08:12:57 +08:00
monitor1394
061ac49670 [improve][radar]improve radar chart 2022-08-31 22:03:51 +08:00
monitor1394
027f5f260c [bug][datazoom] fix datazoom range error (#221) 2022-08-30 08:04:18 +08:00
monitor1394
5f16685b64 [improve][serie] improve min-max data range 2022-08-29 23:02:03 +08:00
monitor1394
6710a52950 [feature][barchart] bar width 2022-08-29 23:00:54 +08:00
monitor1394
de16bfad01 [bug][candlestick] fix tooltip error 2022-08-29 23:00:11 +08:00
monitor1394
b01c2e4338 [improve][CandlestickChart] improve large data rendering 2022-08-29 21:09:27 +08:00
monitor1394
6ae4468aa2 [bug][line] fix linechart error when stack and custom y range. 2022-08-28 17:34:22 +08:00
monitor1394
48686e865c [feature][legend] add new icon type:candlestick 2022-08-26 23:18:35 +08:00
monitor1394
a885be625e [improve][Candlestick] improve CandlestickChart 2022-08-26 23:17:54 +08:00
monitor1394
a1d8f34720 v3.3.0 2022-08-26 07:52:40 +08:00
monitor1394
b2f1fd00b1 [feature][Tooltip] support position 2022-08-26 07:50:48 +08:00
monitor1394
442a51abc1 [improve][label] improve emphasis label 2022-08-25 21:38:25 +08:00
monitor1394
9552e877ce [feature][formatter] support {d3} 2022-08-25 13:37:36 +08:00
monitor1394
34dd3d1c4e [improve][MarkLine] improve label 2022-08-25 08:37:17 +08:00
monitor1394
9e07fa1db3 v3.2.0 2022-08-16 07:43:22 +08:00
monitor1394
990c6dad90 [API][chart] RemoveAllSerie() 2022-08-15 08:21:28 +08:00
monitor1394
99dc2af42a [optimize] optimize smooth curve 2022-08-15 07:30:56 +08:00
monitor1394
f32808a36d [bug][datazoom] fix chart display error when datazoom enable. 2022-08-13 13:38:02 +08:00
monitor1394
ca5470a351 [feature][tooltip] support ignoreDataDefaultContent 2022-08-11 08:11:43 +08:00
monitor1394
34b132735d [bug] fix chart.RemoveSerie (#219) 2022-08-10 13:19:26 +08:00
monitor1394
0f31f057df [bug] fix rotation 2022-08-10 13:18:44 +08:00
monitor1394
65d32f7aec [improve][editor] improve editor edit 2022-08-10 08:16:19 +08:00
monitor1394
fcc1314f17 [optimize][axis] set chart default layer to UI 2022-08-10 07:22:41 +08:00
monitor1394
9981ce2d23 [optimize][axis] optimize minor split line of time axis 2022-08-09 13:38:23 +08:00
monitor1394
f1f2ea78be [feature][AreaStyle] support innerFill 2022-08-09 08:29:06 +08:00
monitor1394
d1f9c77571 [bug] fix serieData.index error 2022-08-09 08:01:19 +08:00
monitor1394
19914586ae [optimize][serie] optimize index of serieData 2022-08-08 07:43:19 +08:00
monitor1394
e7f19e72a5 update serie label 2022-08-02 13:03:33 +08:00
monitor1394
35220a1026 scheduled release date for v3.2.0 2022-08-02 08:01:22 +08:00
monitor1394
b9812a4f98 [feature][bug] fix import packge error 2022-07-29 13:25:05 +08:00
monitor1394
74b078c926 [feature][axis] support minorTick and minorSplitLine of time axis 2022-07-29 07:49:15 +08:00
monitor1394
44dc1f7b16 [feature][UGL] add UGL.DrawPolyon API 2022-07-28 13:33:38 +08:00
monitor1394
cdf0bc81e1 [feature][serie] support the colorBy of serie 2022-07-28 07:21:46 +08:00
monitor1394
5b2b2d4059 [feature][symbol] support symbol settings for StateStyle 2022-07-27 08:00:57 +08:00
monitor1394
b3b0c0b3aa v3.2.0 2022-07-27 08:00:11 +08:00
monitor1394
4f93628667 [feature][serie] support EmphasisStle,BlurStyle and SelectStyle 2022-07-25 07:46:03 +08:00
monitor1394
8dde322c04 [doc] class doc support since version 2022-07-20 08:15:27 +08:00
monitor1394
47ee421913 [bug][axis] fix showStartLabel and showEndLabel not work 2022-07-20 07:38:18 +08:00
monitor1394
0355e3ed46 [feature][axis] support minor tick and minor split line 2022-07-19 08:22:42 +08:00
monitor1394
eedafa7011 [feature][radar] support smooth line 2022-07-17 20:57:38 +08:00
monitor1394
aee49322b7 [feature][datazoom] support time axis 2022-07-15 08:37:14 +08:00
monitor1394
96a49f2b11 v3.1.0 2022-07-12 07:38:42 +08:00
monitor1394
131aabc76a [bug][line] fix ignoreLineBreak of line serie not work 2022-07-12 07:26:07 +08:00
monitor1394
e42afe8d47 [optimize][axis] support auto float min-max range 2022-07-11 07:04:34 +08:00
monitor1394
69243b7cd0 [optimize][axis] support float when Axis MinMaxType set to MinMax 2022-07-11 07:02:02 +08:00
monitor1394
12757eb4db [doc] update doc 2022-07-07 07:42:53 +08:00
monitor1394
945a69ba70 [doc] update doc 2022-07-07 07:08:02 +08:00
monitor1394
9aa8431432 [bug] fix multipe grid error (#210) 2022-07-05 21:43:09 +08:00
monitor1394
a499002426 [code] add example of test dynamic chart 2022-07-05 08:07:52 +08:00
monitor1394
4d5e2481b0 [feature][axis] support Settings.axisMaxSplitNumber 2022-07-04 13:37:16 +08:00
monitor1394
2248b61d03 [bug][axis] fix axis tick error (#209) 2022-07-04 13:14:23 +08:00
monitor1394
419715bb2a [doc] update doc 2022-07-04 08:32:01 +08:00
monitor1394
f5c2e73098 [code] add comment 2022-07-04 08:30:43 +08:00
monitor1394
197402dcb7 [code] refactor the code 2022-07-03 21:09:49 +08:00
monitor1394
33fd4aa9f3 [feature][axis] support AxisName.onZero (#207) 2022-07-03 10:02:22 +08:00
monitor1394
9b263c883b [bug][pie] fix piechart create error with code (#206) 2022-07-02 23:10:11 +08:00
monitor1394
06574a201a [bug] fix AxisLabel.onZero not work in YAxis 2022-07-02 16:51:45 +08:00
monitor1394
fbdb51d847 [bug] fix axislabel distance error 2022-07-02 16:43:52 +08:00
monitor1394
47c9b99931 [bug] fix chart not being created correctly at runtime 2022-06-30 08:31:09 +08:00
monitor1394
bb9f28dd5c [feature][tooltip] support {c0} for itemFormatter (#205) 2022-06-29 13:33:38 +08:00
monitor1394
0f2f55e436 [optimize][pie] avoid label overlap (#56) 2022-06-28 13:23:32 +08:00
monitor1394
6c9528cf19 [optimize][line]smooth line (#169) 2022-06-26 08:35:59 +08:00
monitor1394
91b9055039 [doc] doc link 2022-06-25 19:41:35 +08:00
monitor1394
564ff2e178 [bug] fix tooltip show data error when datazoom enable (#203) 2022-06-25 19:32:50 +08:00
monitor1394
2a03e71312 [bug] fix tooltip draw error when axis data is empty (#204) 2022-06-25 17:07:26 +08:00
monitor1394
0dbcc4ab2b [optimize][tooltip] serie placeHolder 2022-06-25 16:33:50 +08:00
monitor1394
f19b61f1f2 [doc] add since version 2022-06-25 11:45:22 +08:00
monitor1394
9a1c76c236 [optimize][painter] add upper and top painter layer 2022-06-24 22:17:01 +08:00
monitor1394
7c07499e44 [optimize][legend] support background and padding 2022-06-24 22:15:49 +08:00
monitor1394
8a6253621b [optimize][textstyle] support sprite asset of TextMeshPro (#201) 2022-06-21 08:15:48 +08:00
monitor1394
5bc14dd37a [optimaze][tooltip] content rect limit (#202) 2022-06-20 13:41:28 +08:00
monitor1394
b11e8fcb3a [bug]fix TextMeshPro compile error 2022-06-20 13:05:44 +08:00
monitor1394
df0a87c935 [bug] fix fadeout animation 2022-06-20 08:24:00 +08:00
monitor1394
431cf7de74 v3.0.1 2022-06-16 08:14:02 +08:00
monitor1394
87049b5170 [doc] update comment and doc 2022-06-15 07:36:05 +08:00
monitor1394
c24d89c8ab [optimaze][label] icon and emphasis label 2022-06-14 07:28:24 +08:00
monitor1394
e8c46b676f [optimaze][background] rename hideThemeBackgroundColor to autoColor 2022-06-14 07:01:46 +08:00
monitor1394
0880b2f3f9 [optimize][legend]support textstyle autoColor 2022-06-10 21:00:58 +08:00
monitor1394
1d1ad6fa57 [bug] fix axis label active 2022-06-08 08:32:29 +08:00
monitor1394
6e87f82131 3.0 2022-06-01 07:59:00 +08:00
monitor1394
9549159a58 3.0 2022-05-31 08:33:54 +08:00
monitor1394
e370bedc09 3.0 2022-05-31 08:17:54 +08:00
monitor1394
5740882d1c 3.0 2022-05-29 17:25:45 +08:00
monitor1394
63166e5cd1 3.0 2022-05-26 21:33:05 +08:00
monitor1394
6ba6a7929d 3.0 2022-05-24 13:43:15 +08:00
monitor1394
e0a596d02a 3.0 2022-05-24 13:39:19 +08:00
monitor1394
9b7ebea827 3.0 2022-05-24 13:36:23 +08:00
monitor1394
0ad4a47c36 3.0 2022-05-23 08:23:58 +08:00
monitor1394
1ac59dff86 3.0 2022-05-22 22:27:20 +08:00
monitor1394
bafe032bb9 3.0 2022-05-22 22:17:38 +08:00
monitor1394
003f4da9de [bug] fix create chart error 2022-05-06 13:07:50 +08:00
monitor1394
d77e1c3d91 v3.0.0-preivew9 2022-05-06 08:14:49 +08:00
monitor1394
d4b3f5eaa8 3.0.0-preview9 2022-05-06 08:12:15 +08:00
monitor1394
8a78867961 [doc] update doc 2022-05-05 13:23:33 +08:00
monitor1394
d9266b3c9c [refactor][optimize] item color 2022-05-05 13:10:04 +08:00
monitor1394
0801069f72 [add][line] line support dash (#197) 2022-05-04 20:47:02 +08:00
monitor1394
e92afac0de [add][legend] add the delegate callback for legend 2022-05-04 09:19:45 +08:00
monitor1394
d1fd4dcf44 [refactor] refactor symbol and label 2022-05-04 08:45:19 +08:00
monitor1394
43c31405b8 [bug][ring] fix ring label formatter (#195) 2022-05-01 10:54:14 +08:00
monitor1394
4e4d0bc85d [optimize][bar] bar support clip and min-max (#196) 2022-05-01 10:30:58 +08:00
monitor1394
96b0ec45d2 [optimize][tooltip] support background image 2022-04-29 15:54:47 +08:00
monitor1394
8c02ce14ac [bug] fix change color in runtime did not refresh 2022-04-27 08:26:05 +08:00
monitor1394
419c704b23 v3.0.0-preivew8 2022-04-26 08:26:37 +08:00
monitor1394
9dedc1db68 v3.0.0-preivew8 2022-04-26 08:24:45 +08:00
monitor1394
f11ee84517 [optimize][label] support label rotate 2022-04-19 13:30:24 +08:00
monitor1394
dfa978afe0 [optimize][visualmap] support horizontal gradient 2022-04-19 07:22:47 +08:00
monitor1394
4e6658ad70 [optimize][bar] optimize border and capsule 2022-04-18 08:20:16 +08:00
monitor1394
ef5988a851 [enhancement][liquid] support round rect vessel 2022-04-15 13:12:19 +08:00
monitor1394
5d6c5b5f79 [doc] update api doc 2022-04-14 21:42:40 +08:00
monitor1394
80e4475f65 [enhancement][line] line support end label 2022-04-14 21:32:44 +08:00
monitor1394
84cf39df4d [doc] update doc 2022-04-13 22:04:45 +08:00
monitor1394
d44bf55a87 [add][VisualMap] add workOnLine and workOnArea (#191) 2022-04-13 22:03:23 +08:00
monitor1394
ad273cf1b1 [optimize] optimize interact and performance 2022-04-13 13:33:09 +08:00
monitor1394
a3d2d3f1d5 [optimize] optimize interact and performance 2022-04-13 13:26:46 +08:00
monitor1394
7ca4ddcb88 [optimize] radar support area tooltip 2022-04-12 08:09:18 +08:00
monitor1394
9a3461084c [doc] update readme 2022-04-11 21:54:09 +08:00
monitor1394
09df6fa73d [doc] update doc 2022-04-11 21:49:18 +08:00
monitor1394
be4ed41ca6 [optimize] visualmap 2022-04-09 21:30:28 +08:00
monitor1394
e2b0c935e0 [optimize] tooltip 2022-04-09 11:03:41 +08:00
monitor1394
e4fac71987 v3.0.0-preivew7 2022-04-07 08:38:17 +08:00
monitor1394
20825c148f [doc] update api and configuration 2022-04-07 08:36:14 +08:00
monitor1394
5476fa8d09 [setting] update setting 2022-04-07 08:35:20 +08:00
monitor1394
80c77fc69a [optimize] Pie support startAngle 2022-04-07 08:35:03 +08:00
monitor1394
621bc3dcfd [bug] Fix pie color 2022-04-07 08:16:50 +08:00
monitor1394
1ed0ff377a fix add main component error 2022-03-31 21:54:34 +08:00
monitor1394
426d437e6d fixed axis label custom color 2022-03-30 13:15:24 +08:00
monitor1394
6c0dcbbcbb 3.0 2022-03-30 08:25:48 +08:00
monitor1394
4ade064266 3.0 2022-03-30 08:24:47 +08:00
monitor1394
1ad87920d0 3.0 2022-03-29 22:06:10 +08:00
monitor1394
b784900fda 3.0 2022-03-28 19:28:39 +08:00
monitor1394
acba2f5c1e 3.0 2022-03-27 12:49:20 +08:00
monitor1394
3bccbd0ab2 3.0 2022-03-26 22:28:23 +08:00
monitor1394
327661bfdd Create FUNDING.yml 2022-03-26 22:05:59 +08:00
monitor1394
ed393ea560 3.0 2022-03-26 21:34:38 +08:00
monitor1394
3fbf5bc906 3.0 2022-03-26 18:30:55 +08:00
monitor1394
b7efcf87cf 3.0 2022-03-26 18:26:34 +08:00
monitor1394
1aea9f3cfe 3.0 2022-03-26 17:20:52 +08:00
monitor1394
edd6d940b6 3.0 2022-03-26 17:11:12 +08:00
monitor1394
09f7557e1f 3.0 2022-03-25 13:36:10 +08:00
monitor1394
2e954490ec 3.0 2022-03-24 21:48:53 +08:00
monitor1394
f597a3f116 3.0 2022-03-24 08:37:06 +08:00
monitor1394
6cb3709655 3.0 2022-03-21 08:21:16 +08:00
monitor1394
ab21d97029 3.0 2022-03-21 08:06:31 +08:00
monitor1394
2dfda6c0ca 3.0 2022-03-21 07:42:32 +08:00
monitor1394
59896d2323 3.0 2022-03-20 21:37:17 +08:00
monitor1394
da611012da 3.0 2022-03-20 20:58:17 +08:00
monitor1394
1ba362ad11 3.0 2022-03-20 19:08:08 +08:00
monitor1394
c510831f59 3.0 2022-03-20 18:52:50 +08:00
monitor1394
4e24ba7922 3.0 2022-03-18 08:23:17 +08:00
monitor1394
407b3625d7 3.0 2022-03-16 13:41:26 +08:00
monitor1394
d6c45aaf6b 3.0 2022-03-09 08:23:15 +08:00
monitor1394
115a47a5df 3.0 2022-03-09 08:18:59 +08:00
monitor1394
7582a76d1f 3.0 2022-03-09 07:26:15 +08:00
monitor1394
5745fea9a1 3.0 - optimize code 2022-03-04 22:17:32 +08:00
monitor1394
1ee0df09eb 3.0 - inspector 2022-02-25 08:10:09 +08:00
monitor1394
e72349a69f 3.0 - namespace 2022-02-19 22:37:57 +08:00
monitor1394
ce5aeb2d98 3.0 - guage chart 2022-02-19 17:35:22 +08:00
monitor1394
a19b796a02 3.0 - tooltip 2022-02-12 20:10:29 +08:00
monitor1394
cc4ee3735c 3.0 - polar chart 2022-01-26 20:47:14 +08:00
monitor1394
a32f5f5bcf 3.0 - liquid chart and ring chart 2022-01-22 22:58:55 +08:00
monitor1394
d9840bef52 3.0 - radar chart 2022-01-22 21:08:26 +08:00
monitor1394
a8b2068029 3.0 - scatter chart and candlestick chart 2022-01-16 22:16:33 +08:00
monitor1394
c9addaf02c 3.0 - bar chart 2022-01-13 21:45:59 +08:00
monitor1394
0282dae582 compatibility 2022-01-07 09:48:59 +08:00
monitor1394
228a4b2840 3.0 - unitypackage 2022-01-05 21:40:48 +08:00
monitor1394
c160867765 3.0 - optimize vert 2022-01-05 07:46:30 +08:00
monitor1394
d20f27b610 3.0 - simplified serie 2021-12-31 13:00:17 +08:00
monitor1394
3a41f1e00e 3.0 - serie extra component 2021-12-28 08:18:24 +08:00
monitor1394
90cb25b74f 3.0 - cleanup code 2021-12-24 13:33:09 +08:00
monitor1394
fa3137eb55 3.0 - remove gauge chart to extension 2021-12-24 07:38:10 +08:00
monitor1394
18ed060c67 3.0 - interaction 2021-12-23 13:23:18 +08:00
monitor1394
761ae595c2 3.0 - tooltip 2021-12-19 20:53:55 +08:00
monitor1394
0aa476e757 3.0 - animation 2021-12-12 18:05:26 +08:00
monitor1394
9c69774d35 3.0 - bar chart 2021-12-11 18:26:28 +08:00
monitor1394
081cd4b503 3.0 - serie clone and covert 2021-12-09 21:35:23 +08:00
monitor1394
cd1a36cc18 3.0 - serie data context 2021-12-09 07:12:15 +08:00
monitor1394
6109b62eb7 3.0 - serie context 2021-12-08 13:36:02 +08:00
monitor1394
a5469c0996 3.0 - LineChart 2021-12-08 08:31:32 +08:00
monitor1394
f39cddaa5e 3.0 - ParallelChart 2021-11-28 20:31:41 +08:00
monitor1394
1b3fa7fb43 3.0 commit 2021-11-23 13:20:07 +08:00
monitor1394
d87e0f8267 Fixed the problem of displaying exceptions after adding data again when DataZoom is enable (#163) 2021-08-16 14:47:02 +08:00
monitor1394
3590d1ebbc Improved Axis's AxisLabel text rotate setting to avoid inconsistency offset in DataZoom (#163) 2021-08-15 22:35:27 +08:00
monitor1394
6fae151c8e Added Legend's textAutoColor to set the text color match with Serie color (#163) 2021-08-14 15:05:37 +08:00
monitor1394
92ee57baf8 优化BarChart设置Corner时正负柱条圆角对称 2021-08-12 22:16:00 +08:00
monitor1394
b5098d5682 优化Serie的数据全为0时Y轴不显示的问题 2021-08-03 08:23:23 +08:00
monitor1394
a4963435d7 修复Serie开启ignore时被忽略的数据还会参与计算的问题 (#161) 2021-07-29 08:28:07 +08:00
monitor1394
25972f0382 完善BarChartZebra斑马柱图渐变支持 2021-07-29 08:27:59 +08:00
monitor1394
708b08e701 修复TextMeshPro Enable时找不到XCharts路径的问题 (#160) 2021-07-26 21:29:13 +08:00
monitor1394
f69aa1d232 v2.3.0 2021-07-24 09:31:40 +08:00
monitor1394
bdd53bbe24 完善SerieSymbol以支持象形柱图PictorialBarChart扩展 2021-07-22 08:11:12 +08:00
monitor1394
b20e768cd1 修复WdbGL平台上Tooltip不显示的问题 2021-07-19 08:23:39 +08:00
monitor1394
4de732a369 增加SerieiconStyle统一配置图标 2021-07-18 14:16:06 +08:00
monitor1394
f87c8445f9 MarkLine优化 2021-07-16 08:31:10 +08:00
monitor1394
8d6d4ce0c5 增加MarkLine标线 (#142) 2021-07-15 21:18:23 +08:00
monitor1394
5238689baa 优化BarChart可通过serieData.show设置是否显示柱条 2021-07-09 06:50:19 +08:00
monitor1394
6f39e692ef 优化数据存储类型由float全部转为double 2021-07-08 07:20:06 +08:00
monitor1394
e873709443 修复ChartLabel在TMP下异常报错的问题 2021-07-08 07:04:46 +08:00
monitor1394
8d4a65a002 修复PieChartavoidLabelOverlap参数不生效的问题 2021-07-05 07:12:20 +08:00
monitor1394
32a8fed625 修复PieChart选中扇区后鼠标区域指示不准确的问题 2021-07-04 21:16:30 +08:00
monitor1394
1fccc25873 优化SerieLabel 2021-07-04 20:38:26 +08:00
monitor1394
0621845e5a 增加DataZoomsupportInsideScrollsupportInsideDrag参数设置坐标系内是否支持滚动和拖拽 2021-07-01 07:38:06 +08:00
monitor1394
18391881d7 整理代码 2021-07-01 07:35:55 +08:00
monitor1394
0e1d5cc81d 确保XChartsMgr只有一个 2021-06-28 07:23:44 +08:00
monitor1394
78a83238f7 增加AxisLabelshowStartLabelshowEndLabel参数设置首尾的Label是否显示 2021-06-27 21:45:17 +08:00
monitor1394
05f21f2d02 增加AxisLabel和SerieLabel的formatter委托方法 #145 2021-06-27 12:26:20 +08:00
monitor1394
bcb30f3c82 增加更新Axis数据和图标的接口 2021-06-27 12:21:56 +08:00
monitor1394
470da8f975 增加DataZoomorient参数设置水平或垂直样式 2021-06-27 12:20:03 +08:00
monitor1394
8c83e828bf 接口优化 2021-06-26 21:45:56 +08:00
monitor1394
a91d190d85 增加IconStyleautoHideWhenLabelEmpty参数设置当label为空时是否自动隐藏图标 2021-06-21 07:08:59 +08:00
monitor1394
e9e7371213 v2.2.3 2021-06-20 17:05:15 +08:00
monitor1394
9349900ea5 v2.2.2 2021-06-18 06:48:11 +08:00
monitor1394
0ae9be9c63 v2.2.1 2021-06-13 12:10:50 +08:00
monitor1394
953bea6962 完善对多屏幕的支持 2021-06-13 11:50:41 +08:00
monitor1394
1f676c431a 增加IconStylealign参数设置图标的水平对齐 2021-06-12 19:46:57 +08:00
monitor1394
f953a069cb 优化主题Theme的导入和字体自动刷新 (#148) 2021-06-12 14:32:23 +08:00
monitor1394
442206dad8 修复Unity版本兼容问题 (#154) 2021-06-10 12:54:13 +08:00
monitor1394
8dd3ef2a63 增加runtimeSortedData用于排序数据 2021-06-09 07:26:03 +08:00
monitor1394
44110feaaf Improved Candlestickchart support for inverse (#152) 2021-06-05 09:56:40 +08:00
monitor1394
a42c1845d6 优化自定义主题Theme的自动刷新 (#148) 2021-06-05 09:56:00 +08:00
monitor1394
d233f64a68 修复Gauge在最小值为负数时指针指示位置异常的问题 2021-06-04 23:08:34 +08:00
monitor1394
055d3806d8 默认关闭TextLimit 2021-06-04 07:56:01 +08:00
monitor1394
b4f6bd7248 v2.2.0 2021-05-30 20:17:45 +08:00
monitor1394
fb49b2f46a 调整订阅服务 2021-05-30 20:09:32 +08:00
monitor1394
f1a14830b7 增加漏斗图基础代码支持 2021-05-29 22:07:09 +08:00
monitor1394
b849633110 修复DataZoom报错 2021-05-27 21:11:14 +08:00
monitor1394
f656cba56b 优化代码 2021-05-25 23:45:15 +08:00
monitor1394
6872d42f2e 完善TextStylealignment的支持 (#150) 2021-05-25 08:06:32 +08:00
monitor1394
93e376bdbf 修复PieChart数据全为0Label无法正常显示的问题 2021-05-24 21:35:53 +08:00
monitor1394
efc82d01a7 修复Add Serie面板上Serie Name不生效的问题 (#149) 2021-05-24 07:28:45 +08:00
monitor1394
057376882d 增加Axis的图标、自动换行、自定义长宽的支持 2021-05-24 07:17:54 +08:00
monitor1394
d92640c49b 优化DataZoom 2021-05-22 15:29:55 +08:00
monitor1394
bc25663db4 增加SerieAxisinsertDataToHead参数控制数据插入头部还是尾部 2021-05-21 07:24:02 +08:00
monitor1394
d9f99e0d27 serie增加自定义参数 2021-05-20 21:51:52 +08:00
monitor1394
0c549bf23b 优化Editor下的图表创建 #147 2021-05-18 13:10:29 +08:00
monitor1394
4de87fd358 修复Tooltip不触发的问题 2021-05-18 09:29:03 +08:00
monitor1394
01b77ccb55 修复CoordinateChart的tooltip报错 2021-05-18 08:34:11 +08:00
monitor1394
e2aec83de2 CandlestickChart加入菜单栏 #146 2021-05-18 00:06:56 +08:00
monitor1394
d5c8b296a7 修复PieChart的Tooltip高亮不会还原的问题 2021-05-18 00:06:15 +08:00
monitor1394
f2c944baa9 修复BarChart在水平布局时clip不生效的问题 2021-05-18 00:05:12 +08:00
monitor1394
7070c5caa7 移除GanttChart 2021-05-17 12:51:48 +08:00
monitor1394
f2b7cfd40b 修复DataZoom报错 2021-05-17 12:29:28 +08:00
monitor1394
79a02e5594 抽离甘特图 2021-05-16 23:38:06 +08:00
monitor1394
a88b1979d8 重构VisualMap和DataZoom 2021-05-13 09:38:32 +08:00
monitor1394
c1f604f1b6 修复TMP下Theme不显示TMPFont的问题 #143 2021-05-11 21:00:26 +08:00
monitor1394
cb29b38e1c 修复散点图会显示图表外的点的问题 2021-05-11 20:53:09 +08:00
monitor1394
6bee9b20dd VisualMap支持Piecewise类型 2021-05-10 12:45:58 +08:00
monitor1394
6e35907f46 修复RingChart无法设置环形的背景色的问题 #141 2021-05-10 08:27:43 +08:00
monitor1394
44d67151ee 优化Log轴显示极小浮点数 2021-05-08 13:01:46 +08:00
monitor1394
2f98f6a486 增加LiquidChart的方形水位图支持 2021-05-08 09:42:25 +08:00
monitor1394
53085b01b6 优化Axis的刻度表现 #135 2021-05-07 08:35:49 +08:00
monitor1394
424577ca4d 增加Settings中关于关于材质球设置的参数 #140 2021-05-01 22:43:17 +08:00
monitor1394
636df6ebd6 修复无法正确表示部分超大或超小数值的问题 2021-05-01 20:21:31 +08:00
monitor1394
e28c730c21 优化代码,更好的支持自定义图表 2021-04-30 13:10:19 +08:00
monitor1394
3d457bb681 增加Custom类型的Serie的tooltip自定义 2021-04-29 19:57:07 +08:00
monitor1394
fdd6ab0063 修复Radar切换到Circle异常的问题 #139 2021-04-29 19:43:42 +08:00
monitor1394
13a81b8374 修复Log轴时绘制异常的问题 2021-04-29 19:17:12 +08:00
monitor1394
11fc9d15a2 增加SettingsreversePainter可设置Serie的绘制是否逆序 2021-04-29 07:30:42 +08:00
monitor1394
bf82904e66 增加SerieDataignore可忽略当前数据项 2021-04-28 19:28:05 +08:00
monitor1394
3c58396c1f Fixed bug where AxisLabel displayed incorrectly with DataRoom (#138) 2021-04-28 07:00:23 +08:00
monitor1394
6291fd27b0 优化代码,更好的支持自定义图表 2021-04-28 06:56:28 +08:00
monitor1394
59f1fda131 优化代码,更好的支持自定义图表 2021-04-27 12:47:46 +08:00
monitor1394
8a8f352bad Fixed dynamically creating chart at runtime would be abnormal 2021-04-26 19:37:02 +08:00
monitor1394
20ea9e2620 增加BarChart绘制渐变边框的支持 2021-04-26 07:17:26 +08:00
monitor1394
05f0002ef4 ignore obj folder 2021-04-23 07:29:06 +08:00
monitor1394
3507434e7a 增加对自定义Chart的支持 2021-04-22 18:55:56 +08:00
monitor1394
7c762b4455 修复Gauge的AxisLabel文字颜色无法修改的问题 2021-04-22 07:29:08 +08:00
monitor1394
6220b6af6f 取消GaugeAxis的m_SplitLineLength参数忽略 2021-04-22 07:09:47 +08:00
monitor1394
63f054493a 完善多坐标轴的支持 #132 2021-04-14 08:59:03 +08:00
monitor1394
cd35d00e06 v2.1.1 2021-04-13 20:56:33 +08:00
monitor1394
0bc5a24595 整理代码 2021-04-13 10:12:02 +08:00
monitor1394
ce08b0f81e 兼容unity5.6 2021-04-13 09:57:33 +08:00
monitor1394
5aa90274dc 处理unity版本兼容 2021-04-12 19:31:26 +08:00
monitor1394
4b40604a27 fiexd missing class attribute ExtensionOfNativeClass #131 2021-04-12 12:55:22 +08:00
monitor1394
adfc15efd8 unity版本兼容 2021-04-08 19:30:23 +08:00
monitor1394
1e43fc7283 v2.1.0 2021-04-07 20:30:40 +08:00
monitor1394
a2307d9c21 更新Doc 2021-04-02 12:46:29 +08:00
monitor1394
2bec0f1178 优化Theme 2021-04-02 12:41:42 +08:00
monitor1394
c19870444e 优化demo 2021-04-02 12:41:15 +08:00
monitor1394
d423ad6c9e 优化Theme 2021-04-01 12:13:51 +08:00
monitor1394
9c96fbb604 优化Theme 2021-04-01 08:14:04 +08:00
monitor1394
d6caeb585e 优化和重构Theme,解决引用相同或丢失的问题 #118 2021-03-31 21:17:29 +08:00
monitor1394
e23f8b4a96 更新demo 2021-03-30 20:50:03 +08:00
monitor1394
fbeca8f442 更新文档 2021-03-30 20:49:27 +08:00
monitor1394
aebbfaac83 优化Tooltip支持设置不同的类目轴数据 #129 2021-03-30 20:24:12 +08:00
monitor1394
e26220ef93 优化自定义绘制回调接口 2021-03-29 20:28:53 +08:00
monitor1394
ed93fc3005 优化自定义绘制回调接口 2021-03-29 20:27:21 +08:00
monitor1394
ac64bd9435 增加GanttChart甘特图 2021-03-25 12:55:52 +08:00
monitor1394
6a548899fa 修复增删XY轴时可能异常的问题 2021-03-22 20:32:19 +08:00
monitor1394
ddea85d9f0 增加ThemeUnbind按钮用于解绑复制图表时的主题 #118 2021-03-22 03:26:16 +08:00
monitor1394
e8a725fb05 修复InspectorFoldout后的勾选框无法选中的问题 2021-03-18 20:15:40 +08:00
monitor1394
09c32f171d 修复BarChart0 数值时显示异常的问题 2021-03-18 19:25:36 +08:00
monitor1394
457db21751 修复Tooltip的指示器在某些情况下指示位置不准的问题 2021-03-14 05:23:08 +08:00
monitor1394
e06393a22f 修复DataZoom多生成了一个组件的问题 2021-03-14 04:45:19 +08:00
monitor1394
e182827509 优化K线图的Tooltip 2021-03-14 04:44:31 +08:00
monitor1394
234b5ecfa6 优化MultiComponentMode开启后的编辑体验和组件刷新 #128 2021-03-13 04:21:52 +08:00
monitor1394
b7b8d37ecd 优化多条k线图显示 2021-03-12 07:16:20 +08:00
monitor1394
5d19466fdc 增加CandlestickChartK线图 #124 2021-03-10 13:05:31 +08:00
monitor1394
7d46feb1a5 UGL接口优化 2021-03-10 13:05:23 +08:00
monitor1394
7169fdc8ae 修复DataZoom异常 2021-03-10 13:05:15 +08:00
monitor1394
db9e0659f3 Merge branch 'develop' 2021-03-06 08:53:15 +08:00
monitor1394
00057788ab update doc 2021-03-06 08:52:15 +08:00
monitor1394
117ab9e31a 增加PieChartminAngle参数支持设置最小扇区角度 #117 2021-03-06 08:25:43 +08:00
monitor1394
404430e4b2 增加Legend几种内置图标的支持 #90 2021-03-05 08:56:55 +08:00
monitor1394
0d53fa91ff 优化TMP的Enable和Disable 2021-03-04 07:30:29 +08:00
monitor1394
b3037f0818 增加DataZoom对数值轴的支持 #71 2021-03-02 09:16:53 +08:00
monitor1394
9fe8b762b6 Fixed display exception of hidden gameObjects when enabling and disabling a chart #125 2021-03-01 10:07:40 +08:00
monitor1394
0a2751b220 修复启用TMP时编译报错的问题 #125 2021-02-27 05:01:26 +08:00
monitor1394
220b829279 v2.0.1 2021-02-26 01:03:47 +08:00
monitor1394
c507771cff 修复HeatmapChartTooltip指示的位置不准的问题 #123 2021-02-26 00:54:43 +08:00
monitor1394
09daa2f027 修复Unity版本兼容问题 2021-02-22 11:02:54 +08:00
monitor1394
4ea5168e9a 修复Unity版本兼容问题 2021-02-21 22:15:07 +08:00
monitor1394
2fdd554751 update doc 2021-02-21 03:43:32 +08:00
monitor1394
b96e1dcf4d 增加TooltipignoreDataShow参数 2021-02-21 02:42:45 +08:00
monitor1394
80b000ed32 修复创建图表时的空报错 2021-02-21 02:26:36 +08:00
monitor1394
f0c553b0b7 修复图表在LayoutGroup控制下时可能显示错乱的问题 #121 2021-02-19 22:01:56 +08:00
monitor1394
f7b8f2f76f Fixed an issue where the Radar could not refresh itself after parameter changing 2021-02-18 09:47:03 +08:00
monitor1394
04efcf3959 Fixed an issue where the Radar could not refresh itself after parameter changing #122 2021-02-18 09:24:01 +08:00
monitor1394
3a02f66d9e v2.0.0 2021-02-05 21:53:46 +08:00
monitor1394
69c830c520 v2.0.0 2021-02-05 21:52:11 +08:00
monitor1394
49fe5fdb70 v2.0.0 2021-02-05 21:46:31 +08:00
monitor1394
15da731cfe 调整2.0的upm分支 2021-02-04 13:10:30 +08:00
monitor1394
3e1b84029f 修复AxisLineOnZeroYAxis不生效的问题 #116 2021-02-03 12:51:50 +08:00
monitor1394
0a427de273 修复日志内部无法跳转的问题 2021-01-29 21:36:49 +08:00
monitor1394
b4cd770c8d 调整更新日志格式 2021-01-29 21:31:04 +08:00
monitor1394
3b697edd09 调整更新日志格式 2021-01-29 21:24:29 +08:00
monitor1394
9f7ec8be64 调整更新日志格式 2021-01-29 21:16:41 +08:00
monitor1394
7f23cd4676 修复Category轴在BoundaryGapAlignWithLabelTrueTick显示效果不对的问题 #115 2021-01-29 20:55:58 +08:00
monitor1394
82d1bed46b Optimize some details 2021-01-25 09:12:22 +08:00
monitor1394
e9df74ec3c Fixed a Inpsector displayed error 2021-01-22 09:08:52 +08:00
monitor1394
d34959287d v2.0.0-preview.2 2021-01-21 12:51:06 +08:00
monitor1394
ee5cfc3d78 support doc 2021-01-21 12:50:50 +08:00
monitor1394
ec4eee58a2 Fixed an error about AxisTick in Inpsector 2021-01-21 12:40:46 +08:00
monitor1394
0ae92afc09 Fixed a build compatibility error 2021-01-21 12:34:48 +08:00
monitor1394
aebbdf57be update doc 2021-01-20 20:30:39 +08:00
monitor1394
16b3ca1f40 more shields 2021-01-20 09:36:50 +08:00
monitor1394
f8d882c046 增加XChartsSettingseditorShowAllListData参数配置是否在Inspector中显示列表的所有数据 2021-01-19 23:18:41 +08:00
monitor1394
0a5d923592 v2.0.0-preview.1 2021-01-19 12:39:12 +08:00
monitor1394
f330d2eb7b XCharts 2.0 2021-01-17 22:52:32 +08:00
monitor1394
5c9e52a807 XCharts 2.0 2021-01-17 11:44:47 +08:00
monitor1394
f5c76ce3c5 XCharts 2.0 2021-01-17 10:16:30 +08:00
monitor1394
ee4aae2019 XCharts 2.0 2021-01-13 23:02:24 +08:00
monitor1394
660415ae97 XCharts 2.0 2021-01-13 18:40:17 +08:00
monitor1394
d36a9fda9d XCharts 2.0 2021-01-12 13:11:15 +08:00
monitor1394
d9724ee7f3 XCharts 2.0 2021-01-11 12:22:22 +08:00
monitor1394
a1c2f554d4 XCharts 2.0 2021-01-11 08:54:28 +08:00
monitor1394
77f17c7dec 发布v1.6.3版本 2021-01-02 14:08:43 +08:00
monitor1394
e8737ec50e 修复Animation不启用时更新数据会导致图表一直刷新的问题 2020-12-18 19:06:34 +08:00
monitor1394
045e1576b6 XCharts 2.0 is comming soon! 2020-12-12 13:14:29 +08:00
monitor1394
b1c9f36a30 去掉调试日志 2020-12-01 12:18:52 +08:00
monitor1394
1b4e3a449d 修复Unity2020上新创建的图表无法正常绘制的问题 2020-12-01 09:29:11 +08:00
monitor1394
9ebbdaba28 发布v1.6.2版本 2020-11-22 20:37:50 +08:00
monitor1394
779ab98762 发布v1.6.2版本 2020-11-22 20:29:32 +08:00
monitor1394
105d0a85f9 修复LineChart在数据过于密集时折线绘制异常的问题 #99 2020-11-22 15:10:56 +08:00
monitor1394
a4281288ee 修复LineChart的刻度位置在alignWithLabeltrue时可能异常的问题 2020-11-21 08:42:03 +08:00
monitor1394
30f40b601f 修复Unity5兼容报错的问题 2020-11-21 08:41:52 +08:00
monitor1394
a3a9850e13 完善RadarChartIndicator\n换行的支持 2020-11-13 08:48:59 +08:00
monitor1394
0027968e99 update doc 2020-11-12 09:38:26 +08:00
monitor1394
ea8d560f3f 修复LineChart当类型为Smooth时数据过密情况下报错的问题 #101 2020-11-12 09:23:10 +08:00
monitor1394
95cf5ed303 完善HeatmapChartVisualMapPiecewise的支持 2020-10-22 09:39:47 +08:00
monitor1394
7e7d7270ab 修复对数轴logBase设置为0时会卡死的问题 2020-09-24 09:36:09 +08:00
monitor1394
a69667337d 修复PieChart边框大小不一致的问题 2020-09-22 07:29:48 +08:00
monitor1394
a4f1726ab1 meta文件 2020-09-21 20:56:44 +08:00
monitor1394
3e1b3637c9 meta文件 2020-09-21 20:56:36 +08:00
monitor1394
8627494972 整理代码,去掉warning 2020-09-19 18:11:16 +08:00
monitor1394
be71983047 发布v1.6.1版本 2020-09-19 18:05:28 +08:00
monitor1394
9274844548 更新教程 2020-09-19 17:56:56 +08:00
monitor1394
075b0939e9 优化demo效果 2020-09-19 17:25:14 +08:00
monitor1394
1cf0ecf9d6 优化symbol颜色 2020-09-19 17:25:03 +08:00
monitor1394
b07798f5a2 增加Remove All Chart Object移除图表下的所有子节点 2020-09-18 22:24:51 +08:00
monitor1394
ecb09e4ca4 修复SerieLabel在点击图例隐藏Serie后还显示的问题#94 2020-09-18 22:00:03 +08:00
monitor1394
f266655d24 更新文档 2020-09-18 09:35:58 +08:00
monitor1394
a43cf64fb3 优化坐标轴刻度和文本显示#93 2020-09-18 09:29:40 +08:00
monitor1394
be61cb908f meta文件 2020-09-16 19:52:50 +08:00
monitor1394
afc84a0dc0 修复默认分割线不显示的问题 2020-09-13 20:32:41 +08:00
monitor1394
b2f5f69619 优化坐标轴刻度和数据对齐 2020-09-13 20:17:11 +08:00
monitor1394
cd519f021f 优化Legend的颜色可自动匹配ItemStyle的自定义颜色#89 2020-09-08 09:28:19 +08:00
monitor1394
f18dd10f0d Merge pull request #88 from Ernest-su/patch-1
Update ItemStyle.cs
2020-09-08 07:30:28 +08:00
Ernest-su
92e4d9de1b Update ItemStyle.cs
fix backgroundWidth doc
2020-09-07 17:57:21 +08:00
monitor1394
e64284f5ab 优化LineChart在不使用XAxis1时也能显示XAxis1 2020-09-05 17:16:26 +08:00
monitor1394
683f4e1c97 增加LineStyletoColortoColor2设置LineChart的水平渐变,取消通过ItemStyle设置LineChart的水平渐变。 2020-08-29 23:35:40 +08:00
monitor1394
b9566cb180 增加onPointerClickPieonPointerClickBar回调 2020-08-29 22:44:32 +08:00
monitor1394
e82ee56b7f 发布v1.6.0版本 2020-08-24 22:49:47 +08:00
monitor1394
2c1c50c72b 更新问答29 2020-08-24 09:23:28 +08:00
monitor1394
f290ca2ba6 升级颜色配置到新版本 2020-08-24 09:19:11 +08:00
monitor1394
c9d11b3ab8 优化UpgradeChartColor 2020-08-24 09:18:56 +08:00
monitor1394
411695d0dd 优化UpgradeChartColor 2020-08-24 09:10:22 +08:00
monitor1394
ea62d03142 更新文档 2020-08-23 15:41:11 +08:00
monitor1394
c2aa222bbd 更新文档 2020-08-23 15:34:00 +08:00
monitor1394
872020e729 增加升级颜色配置脚本UpgradeChartColor 2020-08-23 15:31:22 +08:00
monitor1394
951c3fe16c 重构代码,将与绘制相关的Color改为Color32,减少隐式转换 2020-08-23 14:31:26 +08:00
monitor1394
85e8b17171 修复动画问题 2020-08-19 09:11:23 +08:00
monitor1394
b2cba25a1e 性能优化 2020-08-18 09:29:23 +08:00
monitor1394
2cc01d4101 优化PieChart绘制表现效果#85 2020-08-15 08:52:25 +08:00
monitor1394
dbbe6de544 修复serieData的Label设置numericFormatter无效的问题 2020-08-13 12:29:24 +08:00
monitor1394
18be460bee 优化BarChart的数据变更动画#83 2020-08-13 09:05:21 +08:00
monitor1394
c1c7312f2c 增加LiquidChart数据变更动画#83 2020-08-11 09:25:28 +08:00
monitor1394
342337c13e Merge pull request #86 from Bian-Sh/master
ToolTips formatter 数值的格式化支持 0.##
2020-08-11 08:57:27 +08:00
monitor1394
0849b359ce 优化PieChart文本堆叠和引线效果#85 2020-08-11 08:47:20 +08:00
雨落随风
2eeec329b2 Update Tooltip.cs
更新对 Tooltips.formatter 的描述
2020-08-09 18:17:52 +08:00
雨落随风
ef10fd987c Tooltips 支持 ToString 中的格式 “0.##”
本次更新用于改善ToString("f2") 出现 100.00%的情况,“#”代表后面不是0就被保留,反之去掉,也就不会出现100.00%的情况
2020-08-09 18:10:33 +08:00
monitor1394
b52105e798 优化LineChart密集数据的绘制表现 2020-08-08 17:14:33 +08:00
monitor1394
fe15760aab 优化LineChart数据密集时的绘制效果 2020-07-31 23:27:20 +08:00
monitor1394
3c3730db44 优化RadarChart#77 2020-07-31 22:36:34 +08:00
monitor1394
fa118d93f8 增加LineChart可通过VisualMapItemStyle配置渐变#78 2020-07-30 09:31:44 +08:00
monitor1394
04507ee863 修复LiquidChart渐出动画问题 2020-07-27 08:59:42 +08:00
monitor1394
2c25af3694 修复折线图在开启动画时可能不绘制线条的问题 2020-07-26 08:56:45 +08:00
monitor1394
87d7668768 修复LineChart渐出动画绘制异常的问题#79 2020-07-25 19:20:14 +08:00
monitor1394
d17a306f7c 优化LiquidChart满时的绘制表现 2020-07-25 18:33:09 +08:00
monitor1394
6a88d899b7 修复LiquidChart100%时渐变色会失效的问题 2020-07-25 14:38:15 +08:00
monitor1394
2a42bcfbef 增加RadarChartTooltipformatter支持#77 2020-07-25 14:09:57 +08:00
monitor1394
af8765734c 增加RingChart环形渐变支持 2020-07-23 12:53:10 +08:00
monitor1394
3a3c79c3cc 增加RingChart环形渐变支持#75 2020-07-23 12:52:06 +08:00
monitor1394
2cafbc7706 增加AxisLabelSerieLabelformatter可单独配置数值格式化#68 2020-07-21 09:13:51 +08:00
monitor1394
3860d1c862 增加动画完成回调接口 2020-07-17 12:19:21 +08:00
monitor1394
5818c3404f 优化Chart放在ScrollView下时不影响ScrollView的滚动和拖动 2020-07-17 09:26:01 +08:00
monitor1394
87511da0c4 完善文档 2020-07-17 08:53:06 +08:00
monitor1394
ebceea3491 完善文档 2020-07-17 08:52:32 +08:00
monitor1394
fe1c11fc5d Fixed a problem with Tooltip that would also show up if it was blocked on top. 修复Tooltip在上层有遮挡还会显示的问题#74 2020-07-16 09:16:36 +08:00
monitor1394
64178ef88d 完善文档 2020-07-15 09:11:35 +08:00
monitor1394
7c95d2d8b8 整理文档 2020-07-11 07:52:08 +08:00
monitor1394
7144f1a2af 更新文档 2020-07-10 12:33:10 +08:00
monitor1394
70a27f2aca test markdown link 2020-07-10 12:29:49 +08:00
monitor1394
7a90b6c943 整理文档 2020-07-10 09:36:56 +08:00
monitor1394
b59c0c790c 整理文档 2020-07-10 09:20:46 +08:00
monitor1394
6da8784102 整理文档 2020-07-10 09:13:26 +08:00
monitor1394
c2c6b87b2c 优化Scatter类型Serie支持Log轴#68 2020-07-08 09:32:49 +08:00
monitor1394
158e56abdf 优化Scatter类型的Serie支持Log 2020-07-08 09:31:11 +08:00
monitor1394
67fc201e83 优化Scatter类型的Serie支持Log轴#68 2020-07-08 09:22:47 +08:00
monitor1394
d66f22ddc8 优化Scatter类型的Serie支持Log 2020-07-08 09:15:28 +08:00
monitor1394
aed0485ba7 修复SerieLabel位置错乱的问题 2020-07-07 07:29:45 +08:00
monitor1394
bd65007851 增加Tooltipoffset参数配置偏移 2020-07-07 07:16:01 +08:00
monitor1394
aa2f90d048 整理重构代码 2020-07-07 06:53:02 +08:00
monitor1394
d343ff9d07 更新文档 2020-07-06 09:09:24 +08:00
monitor1394
fe8fa90625 增加LiquidChart水位图 2020-07-06 08:41:28 +08:00
monitor1394
cc23df6821 优化PolarChartTooltip 2020-07-02 09:44:25 +08:00
monitor1394
d6859f5543 增加PolarChartclockwise是否顺时针支持 2020-07-02 07:31:32 +08:00
monitor1394
b6139514f5 增加PolarChart极坐标图表 2020-07-01 09:38:00 +08:00
monitor1394
9e48c23225 发布v1.5.2版本 2020-06-25 21:18:20 +08:00
monitor1394
5cf93b6111 add asmref 2020-06-25 21:14:25 +08:00
monitor1394
a3aa610d57 修复BarChart在数值为0时还会绘制一小部分柱条的问题 2020-06-25 21:07:17 +08:00
monitor1394
ce69581a3a 优化折线图绘制效果 2020-06-24 12:50:36 +08:00
monitor1394
523067ad58 优化LineChart的堆叠区域半透明绘制效果 2020-06-24 09:23:35 +08:00
monitor1394
e67bab471c Merge branch 'master' of https://github.com/monitor1394/unity-ugui-XCharts 2020-06-24 09:09:14 +08:00
monitor1394
10fe66fcb8 修复PieChart在设置clockwise后绘制异常的问题#65 2020-06-24 09:09:08 +08:00
monitor1394
1639dcd4ee 修复PieChart在设置clockwise后绘制异常的问题 2020-06-24 09:06:39 +08:00
monitor1394
b8bb3abac7 完善Demo 2020-06-23 12:34:55 +08:00
monitor1394
75a58c6975 优化LineChart在峰谷差异过大时的绘制效果#64 2020-06-23 12:21:27 +08:00
monitor1394
eb9da8210e 修复SerieLabel在重新添加数据时可能不显示的问题 2020-06-18 08:57:11 +08:00
monitor1394
04c69ea9e0 增加SerieData可单独设置SerieSymbol#66 2020-06-17 12:46:04 +08:00
monitor1394
02a5b45e10 修复Check For UpdateUnity 2018部分版本报错的问题#63 2020-06-17 07:00:07 +08:00
monitor1394
5835a372f5 增加SerieavoidLabelOverlap参数避免饼图标签堆叠的情况#56 2020-06-16 09:33:34 +08:00
monitor1394
590a13688d 修复SerieLabel可能显示错乱的问题 2020-06-15 08:56:30 +08:00
monitor1394
45dede8aee 优化Tooltip 2020-06-14 18:16:23 +08:00
monitor1394
e77c9fd327 优化Tooltip 2020-06-14 17:04:50 +08:00
monitor1394
d694c5d9f1 整理代码更新文档 2020-06-12 09:22:51 +08:00
monitor1394
30b6b061e6 优化Tooltip 2020-06-11 12:48:00 +08:00
monitor1394
a65ad893eb 修复Check warning不生效的问题 2020-06-11 09:24:33 +08:00
monitor1394
77fd92d2b0 修复饼图和环形图占比很小时不显示的问题 2020-06-11 08:39:15 +08:00
monitor1394
8c759fd94d 增加TooltiptitleFormatter支持配置占位符{i}表示忽略不显示标题 2020-06-11 07:44:11 +08:00
monitor1394
536cccbfaf 修复Editor下Serie的Data在多维数据下编辑异常的问题#62 2020-06-11 07:32:01 +08:00
monitor1394
64568ce2cc 关闭部分组件的raycastTarget 2020-06-11 06:59:16 +08:00
monitor1394
22ca68e04a 修复SerieData回收时部分配置没有重置的问题 2020-06-10 13:10:24 +08:00
monitor1394
63fd4c81b4 优化Legend的布局 2020-06-09 09:24:08 +08:00
monitor1394
c77d13f5db 增加AnimationcustomFadeInDelay等自定义数据项延时和时长回调函数 2020-06-09 06:57:37 +08:00
monitor1394
63fb591b46 增加QA:为什么serie里设置的参数运行后又被重置了 2020-06-08 07:15:28 +08:00
monitor1394
f93355e6c4 修复图例判断超范围异常的问题 2020-06-07 18:22:57 +08:00
monitor1394
53e988e8d2 优化PieChart在数据全为0时的显示为等份的效果 2020-06-07 07:16:24 +08:00
monitor1394
a2e1cd9840 更新文档 2020-06-05 09:27:51 +08:00
monitor1394
9b0165b291 重构代码,增加BaseGraph基类 2020-06-05 08:52:36 +08:00
monitor1394
91a7c88ea1 增加SerieLabelautoOffset参数设置是否自动判断上下偏移 2020-06-04 12:33:25 +08:00
monitor1394
384c6a842e 增加TooltipalwayShow参数设置触发后一直显示 2020-06-04 07:46:07 +08:00
monitor1394
6590b70db6 优化Tooltipformatter支持{.1}类型的通配符 2020-06-04 07:22:58 +08:00
monitor1394
930fb59755 优化Legend数量过多时自动换行显示 2020-06-04 07:06:41 +08:00
monitor1394
8851e54266 修复Single类型的RadarChart设置ceilRate不生效的问题 2020-06-03 12:27:34 +08:00
monitor1394
e597ab7d3f 发布v1.5.1版本 2020-06-03 06:39:58 +08:00
monitor1394
e1ed738ec9 完善文档 2020-06-02 21:55:41 +08:00
monitor1394
5811ebfda1 增加RadarceilRate,设置最大最小值的取整倍率 2020-06-02 20:20:56 +08:00
monitor1394
c897d78a79 优化Tooltipformatter,支持{c1:1-1:f1}格式配置 2020-06-02 12:37:14 +08:00
monitor1394
9a300dc531 修复背景组件初始化时报错的问题 2020-06-01 12:38:59 +08:00
monitor1394
68cccdec32 优化Background组件的生效条件,需要有单独的父节点 2020-05-31 07:43:29 +08:00
monitor1394
bc6e5675e9 修复Editor下点击Data后数据会多一维的问题 2020-05-30 18:04:01 +08:00
monitor1394
c08367fdac 优化PieChart支持设置ignoreValue不显示指定数据 2020-05-30 10:27:54 +08:00
monitor1394
36200c7386 修复RadarChartCircle时不绘制SplitArea的问题 2020-05-30 09:49:28 +08:00
monitor1394
2c5577f534 优化RadarChart在设置max0时可自动刷新最大值 2020-05-30 09:41:46 +08:00
monitor1394
b9a11845ef 隐藏RadarChart的indicator节点 2020-05-29 08:45:25 +08:00
monitor1394
bacec6dec2 修复PieChart设置space时只有一个数据时绘制异常的问题 2020-05-29 08:35:46 +08:00
monitor1394
af0cc9988b 修复调用UpdateDataName()接口时不会自动刷新的问题 2020-05-29 07:52:21 +08:00
monitor1394
b0aad6405c add ingnore file 2020-05-29 07:10:55 +08:00
monitor1394
738173fe7c 优化圆角绘制 2020-05-28 08:41:10 +08:00
monitor1394
b4a127511c 修复调用UpdateDataName()接口时不会自动刷新的问题 2020-05-27 09:28:50 +08:00
monitor1394
e8eb8a5468 优化柱状图的渐变色效果 2020-05-27 09:09:45 +08:00
monitor1394
3db8eba92c 修复Axis设置boundaryGapAxisTickalignWithLabelTick绘制异常的问题 2020-05-24 18:33:05 +08:00
monitor1394
463305a63e 优化版本更新检测 2020-05-24 08:06:40 +08:00
monitor1394
51f3558b55 在package.json中增加版本更新信息 2020-05-24 08:02:14 +08:00
monitor1394
b56099ad2e 发布v1.5.0版本 2020-05-22 12:51:18 +08:00
monitor1394
f3ec7dc196 优化serie的显示和隐藏处理 2020-05-22 09:01:27 +08:00
monitor1394
382c976f02 调整DebugMode的显示位置 2020-05-22 08:36:49 +08:00
monitor1394
5d85fdb7f9 修复背景组件可能显示在最前面的问题 2020-05-22 08:33:30 +08:00
monitor1394
314362321d 修复圆角绘制异常的问题 2020-05-22 08:25:57 +08:00
monitor1394
a0fd70372f 增加圆角柱图支持渐变 2020-05-21 13:15:14 +08:00
monitor1394
47c8f76252 优化柱状图圆角支持设置百分比 2020-05-21 09:20:01 +08:00
monitor1394
7191f8a5ad 修复CovertXYAxis在2019版本上不会自动刷新的问题 2020-05-21 09:19:32 +08:00
monitor1394
18d02be719 增加Background背景组件 2020-05-21 08:32:52 +08:00
monitor1394
40a1a0cbf6 更新Demo 2020-05-19 09:13:40 +08:00
monitor1394
2f61dfd9bd 隐藏Hierarchy试图下自动生成的子节点 2020-05-19 09:11:06 +08:00
monitor1394
a2394a506c 优化反转下的箭头表现 2020-05-19 08:51:51 +08:00
monitor1394
eabf202755 修复折线图箭头绘制异常的问题 2020-05-19 07:40:56 +08:00
monitor1394
738bee9ed5 优化轴线显示箭头时的轴长绘制 2020-05-19 07:23:08 +08:00
monitor1394
16377cabfa 增加chartName检测 2020-05-19 07:08:57 +08:00
monitor1394
c8165c896e 增加chartName属性可指定图表的别称 2020-05-18 07:36:01 +08:00
monitor1394
54103be0f8 重构代码 2020-05-17 20:36:14 +08:00
monitor1394
7432f75f2f 增加部分鼠标事件回调 2020-05-16 20:33:01 +08:00
monitor1394
55c374c07f 更新教程 2020-05-15 07:44:35 +08:00
monitor1394
f476c2c907 优化内置的示例代码,Demo改名为Example 2020-05-15 06:52:40 +08:00
monitor1394
897d596174 优化demo 2020-05-13 22:38:10 +08:00
monitor1394
2859496156 修复Axis设置interval时AxisLabel不及时刷新的问题 2020-05-13 22:37:36 +08:00
monitor1394
2c420ac336 更新文档 2020-05-13 10:15:34 +08:00
monitor1394
2e2a16bbf4 更新文档 2020-05-13 10:08:47 +08:00
monitor1394
d3484d6283 完善Demo,增加性能演示Demo 2020-05-13 09:58:09 +08:00
monitor1394
9990f54edd 优化性能,优化折线图和柱状图的大数据绘制,重构代码 2020-05-13 09:54:40 +08:00
monitor1394
b234a53b73 修复自由锚点兼容的问题 2020-05-12 14:09:26 +08:00
monitor1394
8916cb5250 优化SerieLabelPool 2020-05-10 14:52:52 +08:00
monitor1394
a178858b85 优化代码,修复报错 2020-05-10 00:20:40 +08:00
monitor1394
00ce32fffd 性能优化 2020-05-09 09:42:41 +08:00
monitor1394
898f1bd563 优化version显示格式 2020-05-07 12:37:28 +08:00
monitor1394
c0cd81bf6f 处理UnityWebRequest版本兼容问题 2020-05-05 16:31:21 +08:00
monitor1394
41d01f0555 优化numericFormatter 2020-05-04 14:25:02 +08:00
monitor1394
b333a87f04 增加numericFormatter参数可配置数值格式化显示,去掉forceENotation参数 2020-05-04 13:29:56 +08:00
monitor1394
00d139d553 修复动态数据时Y轴Label不刷新的问题 2020-04-29 14:22:18 +08:00
monitor1394
f4f1bb4b54 增加自由锚点支持,任意对齐方式 2020-04-28 12:28:05 +08:00
monitor1394
e512d27784 优化GaugeChart和RingChart的label初始化 2020-04-24 12:34:20 +08:00
monitor1394
6cdeb2516b 增加Tooltipformatter{.}{c:0}{c1:1}的支持 2020-04-23 13:07:49 +08:00
monitor1394
6d64156db4 完善demo 2020-04-20 08:05:28 +08:00
monitor1394
a66b8a576c 优化LineChart折线图的区域填充渐变效果 2020-04-19 23:17:35 +08:00
monitor1394
839e1fe9d1 增加AxisLabelonZero参数可将Label显示在0刻度上 2020-04-19 22:08:40 +08:00
monitor1394
c64653cab8 增加SerieAxisLabelshowAsPositiveNumber参数将负数数值显示为正数 2020-04-19 11:08:48 +08:00
monitor1394
3df6465764 优化坐标系外裁剪 2020-04-19 10:03:45 +08:00
monitor1394
b689a18a01 优化柱状图绘制 2020-04-18 23:38:42 +08:00
monitor1394
20886dd1d5 增加Covert XY Axis互换XY轴配置 2020-04-18 12:31:21 +08:00
monitor1394
0e892fbb55 增加Axis可通过inverse参数设置坐标轴反向 2020-04-18 08:19:17 +08:00
monitor1394
6290b9ae91 修复PieChart在设置Space参数后动画绘制异常的问题 2020-04-16 09:36:03 +08:00
monitor1394
753b1d5b2b 修复Check warningUnity2019.3上的显示问题 2020-04-16 08:53:10 +08:00
monitor1394
97a81b7816 修复PieChart在设置Space参数后动画绘制异常的问题 2020-04-16 08:38:36 +08:00
monitor1394
1a0412a984 发布v1.4.0版本 2020-04-11 22:44:50 +08:00
monitor1394
0dde0217f9 整理代码 2020-04-11 20:41:39 +08:00
monitor1394
cc0187291e 增加Check warning检测功能 2020-04-11 15:18:34 +08:00
monitor1394
90f5c1ef8a 优化Legend初始化,防止出现预设下删除异常的问题 2020-04-10 07:32:59 +08:00
monitor1394
b3e9e8833c 优化版本检测 2020-04-09 08:02:46 +08:00
monitor1394
772701a549 修复Legend初始化异常的问题 2020-04-09 07:26:40 +08:00
monitor1394
bef00f18e1 修复仪表盘绘制异常的问题 2020-04-08 12:59:35 +08:00
monitor1394
72cf428bd9 增加饼图边框相关demo 2020-04-08 09:04:39 +08:00
monitor1394
e64486079d 增加PieChart通过ItemStyle设置边框的支持 2020-04-08 09:02:46 +08:00
monitor1394
9a295d674f 增加AxisceilRate设置最大最小值的取整倍率 2020-03-29 15:46:01 +08:00
monitor1394
af8127ef2c 增加圆角柱图 2020-03-29 11:14:34 +08:00
monitor1394
0d63c23493 增加itemStylecornerRadius支持圆角矩形 2020-03-29 10:57:59 +08:00
monitor1394
4c2a5a76ce 优化Editor参数编辑,兼容Unity2019.3及以上版本 2020-03-26 09:13:46 +08:00
monitor1394
99d78549c2 更新Demo 2020-03-24 09:08:31 +08:00
monitor1394
ca1e6957a8 增加Serieinspector上可进行调整顺序、添加和删除操作 2020-03-24 09:08:14 +08:00
monitor1394
25941d2050 修复TitletextStylesubTextStyle无效的问题 2020-03-23 07:58:09 +08:00
monitor1394
0d361555f3 增加BarChart通过barType参数设置胶囊柱状图 2020-03-22 22:50:35 +08:00
monitor1394
d50db7b16c 整理代码,去除warning 2020-03-22 08:45:05 +08:00
monitor1394
27c2c88e26 增加BarChartHeatmapChart可通过ignore参数设置忽略数据的支持 2020-03-21 22:01:47 +08:00
monitor1394
46ecdf430e 更新Demo 2020-03-21 11:28:23 +08:00
monitor1394
0e22dcbcdb 增加ItemStyletooltipFormatter参数可单独配置SerieTooltip显示 2020-03-21 11:26:50 +08:00
monitor1394
a0f20f696e 修复X Axis 1Y Axis 1配置变更时不会自动刷新的问题 2020-03-20 08:59:39 +08:00
monitor1394
541bc421b7 增加AxisTickwidth参数可单独设置坐标轴刻度的宽度 2020-03-20 08:47:34 +08:00
monitor1394
a1018801d4 增加SerieradarType参数设置多圈单圈雷达图 2020-03-20 08:31:22 +08:00
monitor1394
2a3d8dc5b2 增加BarChart可用ItemStylebackgroundColor设置柱条背景颜色 2020-03-17 09:13:55 +08:00
monitor1394
b6c206c299 增加SerieDataItemStyleEmphasis可单独配置数据项样式的支持 2020-03-17 08:37:48 +08:00
monitor1394
cc065edb0f 发布v1.3.1版本 2020-03-14 18:26:20 +08:00
monitor1394
2db035a9e1 修复LineChart开启ingore时部分数据可能绘制异常的问题 2020-03-14 11:52:22 +08:00
monitor1394
78c76878d3 修复LineChartlabel偏移显示异常的问题 2020-03-13 08:37:11 +08:00
monitor1394
f130c8378a 发布v1.3.0版本 2020-03-11 22:04:40 +08:00
monitor1394
43c323153c 优化LineChartlabel偏移显示 2020-03-11 21:53:45 +08:00
monitor1394
64636b1f0f 优化清空并重新添加数据后的自动刷新问题 2020-03-11 08:41:42 +08:00
monitor1394
c42a46b1a9 增加LineChart的普通折线图可通过ignore参数设置忽略数据的支持 2020-03-10 12:35:19 +08:00
monitor1394
11f639ba8d 增加LineChart的普通折线图可通过设置ingore参数过滤数据的支持 2020-03-10 09:15:55 +08:00
monitor1394
7c0534098a 增加LineChart的普通折线图可通过设置ingore参数过滤数据的支持 2020-03-10 09:12:47 +08:00
monitor1394
9118fdb660 增加BarChart可通过ItemStyle配置边框的支持 2020-03-09 22:10:48 +08:00
monitor1394
1cf107f47b 增加RingChart环形图 2020-03-08 10:47:48 +08:00
monitor1394
16f7781e49 调整SeriearcShaped参数重命名为roundCap 2020-03-06 07:09:15 +08:00
monitor1394
ca5839576a 增加运行时和非运行时参数变更自动刷新图表 2020-03-05 20:25:19 +08:00
monitor1394
3ef5f9653a Merge branch 'master' of https://github.com/monitor1394/unity-ugui-XCharts 2020-03-02 18:00:05 +08:00
monitor1394
d6df474182 适配Unity2019版本 2020-03-02 17:59:57 +08:00
monitor1394
5cf7b5d571 重构Legend图例,改变样式,增加自定义图标等设置 2020-02-26 22:52:57 +08:00
monitor1394
8c1cc28776 修复快速添加的图表不响应事件的问题 2020-02-23 14:15:06 +08:00
monitor1394
d4426776b7 渐出动画 2020-02-23 11:17:46 +08:00
monitor1394
2468393f14 增加BaseChart.AnimationFadeOut()渐入动画,重构动画系统 2020-02-23 11:06:16 +08:00
monitor1394
70a303cb12 增加TextStylelineSpacing参数配置行间距 2020-02-13 09:23:30 +08:00
monitor1394
e5f136c954 增加RadarsplitLine参数配置分割线,去掉lineStyle参数 2020-02-12 19:13:44 +08:00
monitor1394
dd72e773e7 new feature 2020-02-11 21:33:58 +08:00
monitor1394
8459bccb1e 增加TooltipbackgroundImage参数配置背景图 2020-02-11 21:30:20 +08:00
monitor1394
c73e1d6e3f 增加TooltippaddingLeftRightpaddingTopBottom参数配置文字和边框的间距 2020-02-11 21:01:01 +08:00
monitor1394
695c2fe311 增加TooltiplineStyle参数配置指示线样式 2020-02-11 20:37:48 +08:00
monitor1394
29598de9b7 增加AxissplitLine参数控制分割线 2020-02-11 20:37:34 +08:00
monitor1394
d60ae1a5cf 增加Serieclip参数控制是否超出坐标系外裁剪 2020-02-10 18:30:05 +08:00
monitor1394
5443e4931a 修复报错 2020-02-08 15:16:28 +08:00
monitor1394
3cee08c434 newfeature 2020-02-08 14:51:31 +08:00
monitor1394
5246d59173 更新demo 2020-02-08 14:51:23 +08:00
monitor1394
5b923f9990 更新文档 2020-02-08 14:14:39 +08:00
monitor1394
c458d4c27c 优化TextLimit文本长度自适应 2020-02-08 14:14:24 +08:00
monitor1394
49ed5ac153 增加SerieSymbolgap参数控制图形标记的外留白距离 2020-02-08 14:13:45 +08:00
monitor1394
616d63a4de 增加TextLimit组件可以设置AxisLabel的文本自适应 2020-01-26 22:34:57 +08:00
monitor1394
8043b116a2 优化Tooltip设置itemFormatter时显示系列颜色 2020-01-20 19:25:08 +08:00
monitor1394
8b7955f498 增加Radar雷达图在inspector配置areaStyle的支持 2020-01-20 19:13:49 +08:00
1182 changed files with 79075 additions and 834079 deletions

13
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,13 @@
# These are supported funding model platforms
github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
custom: ['https://github.com/XCharts-Team/XCharts/blob/master/Documentation~/zh/img/support_alipay.png','https://github.com/XCharts-Team/XCharts/blob/master/Documentation~/zh/img/support_wechat.png']

14
.gitignore vendored
View File

@@ -1,20 +1,6 @@
/.vs
/.vscode
.vs
/XCharts-ios
/Library
/Temp
/Logs
/UnityPackageManager
/Assets/Res
/Assets/Res.meta
/Assets/Package
/Assets/Package.meta
/Assets/XChartsDemo/demo_test.unity
/Assets/XChartsDemo/demo_test.unity.meta
/Assets/XChartsDemo/empty.unity
/Assets/XChartsDemo/empty.unity.meta
*.sln
*.csproj

View File

@@ -1,10 +0,0 @@
fileFormatVersion: 2
guid: 3e77b3cfd5a4d2646964841d2b14dcb2
folderAsset: yes
timeCreated: 1536101212
licenseType: Free
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,158 +0,0 @@
# 更新日志
* (2020.01.15) 发布`v1.2.0`版本
* (2020.01.15) 增加`AxisLabel`格式化为整数的支持(`{value:f0}`
* (2020.01.15) 增加折线图对数轴`Log`的支持
* (2020.01.09) 修复当设置`DataZoom``minShowNum`时可能异常的问题
* (2020.01.08) 修复当设置`AxisLine``onZero`时刻度显示异常的问题
* (2020.01.08) 增加`Mask`遮罩遮挡支持
* (2019.12.21) 增加`Tooltip`的单个数据项和标题的字符串模版格式器
* (2019.12.21) 增加`DataZoom`的最小显示数据个数`minShowNum`
* (2019.12.20) 增加`Demo40_Radar.cs`雷达图代码操作`Demo`
* (2019.12.20) 添加`RadarChart`相关API接口
* (2019.12.17) 发布`v1.1.0`版本
* (2019.12.16) 修复`Overlay`模式下不显示`Tooltip`的问题
* (2019.12.15) 增加`Title``TextStyle`支持
* (2019.12.11) 修复`Legend`都隐藏时`Value轴`还显示数值的问题
* (2019.12.11) 修复`Series->Data->Size`重置为0后设置无效的问题
* (2019.12.06) 修复数据过小时`AxisLabel`直接科学计数法显示的问题
* (2019.12.04) 优化和完善数据更新`UpdateData`接口
* (2019.12.03) 增加圆环饼图的圆角支持,参数:`serie.arcShaped`
* (2019.12.03) 增加数据更新动画,参数:`serie.animation.updateAnimation`
* (2019.11.30) 增加`GaugeChart`仪表盘
* (2019.11.22) 修复`BarChart`清空数据重新赋值后`SerieLabel`显示异常的问题
* (2019.11.16) 修复`SerieLabel`设置`color`等参数不生效的问题
* (2019.11.12) 发布`v1.0.5`版本
* (2019.11.12) 修复`2018.3`以下版本打开项目报错的问题
* (2019.11.12) 增加`IconStyle`子组件,优化`SerieData`的图标配置
* (2019.11.11) 修复`Serie`的图标显示在上层遮挡`Label`的问题
* (2019.11.11) 修复饼图当数据过小时视觉引导线会穿透的的问题
* (2019.11.09) 修复饼图添加数据时`Label`异常的问题
* (2019.11.09) 优化结构,分离为`XCharts``XChartsDemo`两部分
* (2019.11.05) 发布`v1.0.4`版本
* (2019.11.05) 增加`Radar`雷达组件文本样式参数配置支持
* (2019.11.04) 修复`Unity2018.3`以下版本代码不兼容的问题
* (2019.11.04) 优化`SerieLabel`过多时引起的性能问题
* (2019.11.03) 发布`v1.0.3`版本
* (2019.11.03) 增加`Editor`快捷添加图表:`Hierarchy`试图下右键`XCharts->LineChart`
* (2019.11.02) 优化非配置参数变量命名和访问权限,简化`API`
* (2019.10.31) 发布`v1.0.2`版本
* (2019.10.31) 修复`prefab`预设制作报错的问题
* (2019.10.31) 增加访问主题组件API`BaseChart.themeInfo`
* (2019.10.26) 发布`v1.0.1`版本
* (2019.10.26) 修复版本检查功能在非运行时异常的问题
* (2019.10.26) 增加科学计数法显示数值的支持(查阅`forceENotation`参数)
* (2019.10.26) 增加`Axis`类目轴数据为空时的默认显示支持
* (2019.10.26) 增加`Axis`数值轴的最大最小值可设置为小数的支持,优化极小数图表的表现效果
* (2019.10.25) 发布`v1.0.0`版本
* (2019.10.23) 增加版本检测功能:`Component -> XCharts -> Check For Update`
* (2019.10.22) 增加`Package Manager`安装的支持
* (2019.10.20) 增加`Demo`首页`BarChart`的代码动态控制效果
* (2019.10.18) 增加`Serie``barType`参数,可配置`斑马柱状图`
* (2019.10.18) 增加`Serie``barPercentStack`参数,可配置`百分比堆叠柱状图`
* (2019.10.16) 增加`Demo`首页`LineChart`的代码动态控制效果
* (2019.10.15) 移除`Pie`组件,相关参数放到`Settings`中配置
* (2019.10.15) 增加`Demo`首页,展示代码动态控制效果
* (2019.10.14) 增加`RadarChart``ScatterChart``HeatmapChart`的起始动画效果
* (2019.10.14) 增加`SerieData``radius`自定义数据项的半径
* (2019.10.14) 增加`HeatmapChart`热力图
* (2019.10.14) 增加`VisualMap`视觉映射组件
* (2019.10.14) 增加`ItemStyle`数据项样式组件
* (2019.10.14) 增加`Emphasis`高亮样式组件
* (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) 增加`SmoothDash`平滑虚线的支持
* (2019.09.30) 增加`Serie`采样类型`sampleType`的相关配置
* (2019.09.29) 增加`SerieSymbol`关于显示间隔的相关配置
* (2019.09.29) 重构代码:
* `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) 增加`LineArrow`配置带箭头曲线
* (2019.09.19) 增加`Tooltip``FixedWidth``FixedHeight``MinWidth``MinHeight`设置支持
* (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) 增加`BarChart``Animation`初始化动画配置支持
* (2019.09.02) 增加`LineChart``Animation`初始化动画配置支持
* (2019.08.22) 增加`AxisName``Offset`偏移配置支持
* (2019.08.22) 增加`AxisLine``Width`配置支持
* (2019.08.20) 增加`SerieLabel`的背景宽高、文字边距、文字旋转的配置
* (2019.08.20) 增加`BarChart``Label`配置支持
* (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) 发布`v0.8.2`版本
* (2019.08.07) 修复区域平滑折线图显示异常的问题
* (2019.08.06) 修复`serie`系列数超过调色盘颜色数时获取的颜色异常的问题
* (2019.08.06) 修复当`Axis``minMaxType``Custom``max`设置为`100`不生效的问题
* (2019.08.04) 发布`v0.8.1`版本
* (2019.08.04) 修复从Inspector中修改数据不生效的问题
* (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) 增加`PieChart`多饼图支持
* (2019.07.23) 优化`Theme`主题的自定义,切换主题时自定义配置不受影响
* (2019.07.22) 增加`EffectScatter`类型的散点图
* (2019.07.21) 增加`ScatterChart`散点图
* (2019.07.21) 增加`SerieData`支持多维数据配置
* (2019.07.20) 增加`Symbol`配置`Serie`标志图形的显示
* (2019.07.19) 增加用代码添加动态正弦曲线的示例`Demo11_AddSinCurve`
* (2019.07.19) 优化`Legend`的显示和控制
* (2019.07.18) 优化抗锯齿,曲线更平滑
* (2019.07.18) 增加`Tooltip`指示器类型,优化显示控制
* (2019.07.15) 增加`Size`设置图表尺寸
* (2019.07.14) 增加`二维数据`支持XY轴都可以设置为数值轴
* (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.20) 增加`AreaAlpha`控制`RadarChart``Area`透明度
* (2019.06.13) 增加`DataZoom`实现`区域缩放`
* (2019.06.01) 增加`stepType`实现`LineChart``阶梯线图`
* (2019.05.29) 增加`InSameBar`实现`BarChart``非堆叠同柱`
* (2019.05.29) 增加`crossLabel`控制`Tooltip``十字准星指示器`
* (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`三种默认主题
* (2018.09.05) 发布`v0.1.0`版本

View File

@@ -1,310 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace XCharts
{
[DisallowMultipleComponent]
public class Demo00_CheatSheet : MonoBehaviour
{
private LineChart chart;
private float speed = 100f;
void Awake()
{
LoopDemo();
}
private void OnEnable()
{
LoopDemo();
}
void LoopDemo()
{
StopAllCoroutines();
StartCoroutine(CheatSheet());
}
IEnumerator CheatSheet()
{
StartCoroutine(InitChart());
StartCoroutine(ComponentTitle());
yield return new WaitForSeconds(2);
StartCoroutine(ComponentAxis());
yield return new WaitForSeconds(2);
StartCoroutine(ComponentGrid());
yield return new WaitForSeconds(2);
StartCoroutine(ComponentSerie());
yield return new WaitForSeconds(4);
StartCoroutine(ComponentLegend());
yield return new WaitForSeconds(4);
StartCoroutine(ComponentTheme());
yield return new WaitForSeconds(4);
StartCoroutine(ComponentDataZoom());
yield return new WaitForSeconds(5);
StartCoroutine(ComponentVisualMap());
yield return new WaitForSeconds(3);
LoopDemo();
}
IEnumerator InitChart()
{
chart = gameObject.GetComponent<LineChart>();
if (chart == null) gameObject.AddComponent<LineChart>();
chart.title.show = true;
chart.title.text = "术语解析-组件";
chart.grid.bottom = 30;
chart.grid.right = 30;
chart.grid.left = 50;
chart.grid.top = 80;
chart.dataZoom.enable = false;
chart.visualMap.enable = false;
chart.RemoveData();
chart.AddSerie(SerieType.Bar, "Bar");
chart.AddSerie(SerieType.Line, "Line");
for (int i = 0; i < 8; i++)
{
chart.AddXAxisData("x" + (i + 1));
chart.AddData(0, Random.Range(10, 100));
chart.AddData(1, Random.Range(30, 100));
}
yield return null;
}
IEnumerator ComponentTitle()
{
chart.title.text = "术语解析 - 组件";
chart.title.subText = "Title 标题:可指定主标题和子标题";
chart.xAxis0.show = true;
chart.yAxis0.show = true;
chart.series.list[0].show = false;
chart.series.list[1].show = false;
chart.legend.show = false;
for (int i = 0; i < 4; i++)
{
chart.title.show = !chart.title.show;
chart.RefreshChart();
yield return new WaitForSeconds(0.2f);
}
chart.title.show = true;
chart.RefreshChart();
}
IEnumerator ComponentAxis()
{
chart.title.subText = "Axis 坐标轴配置X和Y轴的轴线、刻度、标签等样式外观配置";
chart.series.list[0].show = false;
chart.series.list[1].show = false;
for (int i = 0; i < 4; i++)
{
chart.xAxis0.show = !chart.xAxis0.show;
chart.yAxis0.show = !chart.yAxis0.show;
chart.RefreshChart();
yield return new WaitForSeconds(0.2f);
}
chart.xAxis0.show = true;
chart.yAxis0.show = true;
chart.RefreshChart();
yield return new WaitForSeconds(1f);
}
IEnumerator ComponentGrid()
{
chart.title.subText = "Grid 网格:调整坐标系边距和颜色等";
for (int i = 0; i < 4; i++)
{
chart.grid.backgroundColor = i % 2 == 0 ? Color.clear : Color.grey;
chart.RefreshChart();
yield return new WaitForSeconds(0.2f);
}
chart.grid.backgroundColor = Color.clear;
chart.RefreshChart();
yield return new WaitForSeconds(1f);
}
IEnumerator ComponentSerie()
{
chart.title.subText = "Serie 系列:调整坐标系边距和颜色等";
chart.series.list[0].show = true;
chart.series.list[1].show = true;
chart.AnimationReset();
chart.RefreshChart();
yield return new WaitForSeconds(1.2f);
for (int i = 0; i < 4; i++)
{
chart.series.list[0].show = !chart.series.list[0].show;
chart.series.list[1].show = !chart.series.list[1].show;
chart.RefreshChart();
yield return new WaitForSeconds(0.2f);
}
chart.series.list[0].show = true;
chart.series.list[1].show = true;
chart.RefreshChart();
yield return new WaitForSeconds(1f);
}
IEnumerator ComponentLegend()
{
chart.title.subText = "Legend 图例:展示不同系列的名字和颜色,可控制系列显示等";
chart.legend.show = true;
chart.grid.top = 80;
chart.legend.location.top = 50;
chart.RefreshChart();
yield return new WaitForSeconds(1f);
for (int i = 0; i < 4; i++)
{
chart.legend.show = !chart.legend.show;
chart.RefreshChart();
yield return new WaitForSeconds(0.2f);
}
chart.legend.show = true;
chart.RefreshChart();
yield return new WaitForSeconds(1f);
chart.ClickLegendButton(0, "Line", false);
yield return new WaitForSeconds(0.2f);
chart.ClickLegendButton(0, "Line", true);
yield return new WaitForSeconds(0.5f);
chart.ClickLegendButton(1, "Bar", false);
yield return new WaitForSeconds(0.2f);
chart.ClickLegendButton(1, "Bar", true);
yield return new WaitForSeconds(0.5f);
}
IEnumerator ComponentTheme()
{
chart.title.subText = "Theme 主题:可从全局上配置图表的颜色、字体等效果,支持默认主题切换";
yield return new WaitForSeconds(1f);
chart.title.subText = "Theme 主题Light主题";
chart.UpdateTheme(Theme.Light);
yield return new WaitForSeconds(1f);
chart.title.subText = "Theme 主题Dark主题";
chart.UpdateTheme(Theme.Dark);
yield return new WaitForSeconds(1f);
chart.title.subText = "Theme 主题Default主题";
chart.UpdateTheme(Theme.Default);
yield return new WaitForSeconds(1f);
}
IEnumerator ComponentDataZoom()
{
chart.title.subText = "DataZoom 区域缩放:可通过拖、拽、缩小、放大来观察细节数据";
chart.grid.bottom = 70;
chart.dataZoom.enable = true;
chart.dataZoom.supportInside = true;
chart.dataZoom.supportSlider = true;
chart.dataZoom.height = 30;
chart.dataZoom.start = 0;
chart.dataZoom.end = 100;
chart.RefreshChart();
for (int i = 0; i < 4; i++)
{
chart.dataZoom.supportSlider = !chart.dataZoom.supportSlider;
chart.RefreshChart();
yield return new WaitForSeconds(0.2f);
}
chart.dataZoom.supportSlider = true;
chart.RefreshChart();
yield return new WaitForSeconds(1f);
while (chart.dataZoom.start < 40)
{
chart.dataZoom.start += speed * Time.deltaTime * 0.8f;
chart.RefreshDataZoom();
chart.RefreshChart();
yield return null;
}
while (chart.dataZoom.end > 60)
{
chart.dataZoom.end -= speed * Time.deltaTime * 0.8f;
chart.RefreshDataZoom();
chart.RefreshChart();
yield return null;
}
while (chart.dataZoom.start > 0)
{
chart.dataZoom.start -= speed * Time.deltaTime * 0.8f;
chart.dataZoom.end -= speed * Time.deltaTime * 0.8f;
chart.RefreshDataZoom();
chart.RefreshChart();
yield return null;
}
while (chart.dataZoom.end < 100)
{
chart.dataZoom.start += speed * Time.deltaTime * 0.8f;
chart.dataZoom.end += speed * Time.deltaTime * 0.8f;
chart.RefreshDataZoom();
chart.RefreshChart();
yield return null;
}
while (chart.dataZoom.start > 0 || chart.dataZoom.end < 100)
{
chart.dataZoom.start -= speed * Time.deltaTime * 0.8f;
chart.dataZoom.end += speed * Time.deltaTime * 0.8f;
chart.RefreshDataZoom();
chart.RefreshChart();
yield return null;
}
}
IEnumerator ComponentVisualMap()
{
chart.title.subText = "VisualMap 视觉映射:可从全局上配置图表的颜色、字体等效果,支持默认主题切换";
chart.visualMap.enable = true;
chart.visualMap.show = true;
chart.visualMap.orient = Orient.Vertical;
chart.visualMap.calculable = true;
chart.visualMap.min = 0;
chart.visualMap.max = 100;
chart.visualMap.range[0] = 0;
chart.visualMap.range[1] = 100;
var colors = new List<string>{"#313695", "#4575b4", "#74add1", "#abd9e9", "#e0f3f8", "#ffffbf",
"#fee090", "#fdae61", "#f46d43", "#d73027", "#a50026"};
chart.visualMap.inRange.Clear();
foreach (var str in colors)
{
chart.visualMap.inRange.Add(ThemeInfo.GetColor(str));
}
chart.grid.left = 80;
chart.grid.bottom = 100;
chart.RefreshChart();
yield return new WaitForSeconds(1f);
while (chart.visualMap.rangeMin < 40)
{
chart.visualMap.rangeMin += speed * Time.deltaTime;
chart.RefreshChart();
yield return null;
}
while (chart.visualMap.rangeMax > 60)
{
chart.visualMap.rangeMax -= speed * Time.deltaTime;
chart.RefreshChart();
yield return null;
}
while (chart.visualMap.rangeMin > 0 || chart.visualMap.rangeMax < 100)
{
chart.visualMap.rangeMin -= speed * Time.deltaTime;
chart.visualMap.rangeMax += speed * Time.deltaTime;
chart.RefreshChart();
yield return null;
}
}
}
}

View File

@@ -1,52 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEngine;
namespace XCharts
{
[DisallowMultipleComponent]
[ExecuteInEditMode]
public class Demo01_UpdateData : MonoBehaviour
{
private float updateTime = 0;
BaseChart chart;
void Awake()
{
chart = gameObject.GetComponent<BaseChart>();
}
void Update()
{
updateTime += Time.deltaTime;
if (chart && updateTime > 2)
{
updateTime = 0;
var serie = chart.series.GetSerie(0);
//serie.animation.updateAnimation = true;
var dataCount = serie.dataCount;
if (chart is RadarChart)
{
var dimension = serie.GetSerieData(0).data.Count - 1;
chart.UpdateData(0, 0, Random.Range(0, dimension + 1), Random.Range(0, 100));
}
else if (chart is HeatmapChart)
{
var dimension = serie.GetSerieData(0).data.Count - 1;
for (int i = 0; i < dataCount; i++)
{
chart.UpdateData(0, i, dimension, Random.Range(0, 10));
}
}
else
{
chart.UpdateData(0, Random.Range(0, dataCount), Random.Range(10, 90));
}
}
}
}
}

View File

@@ -1,68 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEngine;
namespace XCharts
{
[DisallowMultipleComponent]
[ExecuteInEditMode]
public class Demo11_AddSinCurve : MonoBehaviour
{
private float time;
public int angle;
private LineChart chart;
void Awake()
{
chart = gameObject.GetComponent<LineChart>();
if (chart != null)
{
GameObject.DestroyImmediate(chart);
}
chart = gameObject.AddComponent<LineChart>();
chart.title.show = true;
chart.title.text = "Sin Curve";
chart.tooltip.show = true;
chart.legend.show = false;
chart.xAxises[0].show = true;
chart.xAxises[1].show = false;
chart.yAxises[0].show = true;
chart.yAxises[1].show = false;
chart.xAxises[0].type = Axis.AxisType.Value;
chart.yAxises[0].type = Axis.AxisType.Value;
chart.xAxises[0].boundaryGap = false;
chart.xAxises[0].maxCache = 0;
chart.series.list[0].maxCache = 0;
chart.RemoveData();
var serie = chart.AddSerie(SerieType.Line);
serie.symbol.type = SerieSymbolType.None;
serie.lineType = LineType.Normal;
for (angle = 0; angle < 1080; angle++)
{
float xvalue = Mathf.PI / 180 * angle;
float yvalue = Mathf.Sin(xvalue);
chart.AddData(0, xvalue, yvalue);
}
}
void Update()
{
if (angle > 3000) return;
angle++;
float xvalue = Mathf.PI / 180 * angle;
float yvalue = Mathf.Sin(xvalue);
chart.AddData(0, xvalue, yvalue);
}
}
}

View File

@@ -1,39 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEngine;
using UnityEngine.UI;
namespace XCharts
{
[DisallowMultipleComponent]
[ExecuteInEditMode]
public class Demo12_CustomDrawing : MonoBehaviour
{
LineChart chart;
void Awake()
{
chart = gameObject.GetComponent<LineChart>();
if (chart == null) return;
chart.customDrawCallback = delegate (VertexHelper vh)
{
var dataPoints = chart.series.list[0].dataPoints;
if (dataPoints.Count > 0)
{
var pos = dataPoints[3];
var zeroPos = new Vector3(chart.coordinateX, chart.coordinateY);
var startPos = new Vector3(pos.x, zeroPos.y);
var endPos = new Vector3(pos.x, zeroPos.y + chart.coordinateHeight);
ChartDrawer.DrawLine(vh, startPos, endPos, 1, Color.blue);
ChartDrawer.DrawCricle(vh, pos, 5, Color.blue);
}
};
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: e27021e8c8377464a8b439cf785080ee
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,48 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEngine;
namespace XCharts
{
[DisallowMultipleComponent]
[ExecuteInEditMode]
public class Demo13_LineSimple : MonoBehaviour
{
void Awake()
{
var chart = gameObject.GetComponent<LineChart>();
if (chart == null)
{
chart = gameObject.AddComponent<LineChart>();
}
chart.title.show = true;
chart.title.text = "Line Simple";
chart.tooltip.show = true;
chart.legend.show = false;
chart.xAxises[0].show = true;
chart.xAxises[1].show = false;
chart.yAxises[0].show = true;
chart.yAxises[1].show = false;
chart.xAxises[0].type = Axis.AxisType.Category;
chart.yAxises[0].type = Axis.AxisType.Value;
chart.xAxises[0].splitNumber = 10;
chart.xAxises[0].boundaryGap = true;
chart.RemoveData();
chart.AddSerie(SerieType.Line);
for (int i = 0; i < 10; i++)
{
chart.AddXAxisData("x" + i);
chart.AddData(0, Random.Range(10, 20));
}
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 75813849985304690b882bdd95364bae
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 9b4ec86ec75e9428e878f99c14f7676f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: ccf4c940af6c343e6abea9580e3915bb
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,124 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace XCharts
{
[DisallowMultipleComponent]
public class Demo40_Radar : MonoBehaviour
{
private RadarChart chart;
private Serie serie, serie1;
void Awake()
{
LoopDemo();
}
private void OnEnable()
{
LoopDemo();
}
void LoopDemo()
{
StopAllCoroutines();
StartCoroutine(RadarDemo());
}
IEnumerator RadarDemo()
{
StartCoroutine(RadarAdd());
yield return new WaitForSeconds(2);
StartCoroutine(RadarUpdate());
yield return new WaitForSeconds(2);
StartCoroutine(RadarAddMultiple());
yield return new WaitForSeconds(2);
LoopDemo();
}
IEnumerator RadarAdd()
{
chart = gameObject.GetComponent<RadarChart>();
if (chart == null) chart = gameObject.AddComponent<RadarChart>();
chart.RemoveRadar();
chart.RemoveData();
chart.title.text = "RadarChart - 雷达图";
chart.title.subText = "";
chart.legend.show = true;
chart.legend.location.align = Location.Align.TopLeft;
chart.legend.location.top = 60;
chart.legend.location.left = 2;
chart.legend.itemWidth = 70;
chart.legend.itemHeight = 20;
chart.legend.orient = Orient.Vertical;
chart.AddRadar(Radar.Shape.Polygon, new Vector2(0.5f, 0.4f), 0.4f);
chart.AddIndicator(0, "indicator1", 0, 100);
chart.AddIndicator(0, "indicator2", 0, 100);
chart.AddIndicator(0, "indicator3", 0, 100);
chart.AddIndicator(0, "indicator4", 0, 100);
chart.AddIndicator(0, "indicator5", 0, 100);
serie = chart.AddSerie(SerieType.Radar, "test");
serie.radarIndex = 0;
chart.AddData(0, new List<float> { 10, 20, 60, 40, 20 }, "data1");
chart.AddData(0, new List<float> { 40, 60, 90, 80, 70 }, "data2");
yield return new WaitForSeconds(1);
}
IEnumerator RadarUpdate()
{
chart.UpdateIndicator(0, 0, "new1", 0, 100);
chart.UpdateData(0, 0, new List<float> { 15, 30, 50, 60, 50 });
chart.UpdateDataName(0, 0, "new1");
yield return new WaitForSeconds(1);
}
IEnumerator RadarAddMultiple()
{
chart.RemoveRadar();
chart.RemoveData();
chart.title.text = "RadarChart - 多雷达图";
chart.title.subText = "";
chart.legend.show = true;
chart.legend.location.align = Location.Align.TopLeft;
chart.legend.location.top = 60;
chart.legend.location.left = 2;
chart.legend.itemWidth = 70;
chart.legend.itemHeight = 20;
chart.legend.orient = Orient.Vertical;
chart.AddRadar(Radar.Shape.Polygon, new Vector2(0.25f, 0.4f), 0.25f);
for (int i = 1; i <= 5; i++)
{
chart.AddIndicator(0, "radar1" + i, 0, 100);
}
chart.AddRadar(Radar.Shape.Circle, new Vector2(0.75f, 0.4f), 0.25f);
for (int i = 1; i <= 5; i++)
{
chart.AddIndicator(1, "radar2" + i, 0, 100);
}
serie = chart.AddSerie(SerieType.Radar, "test1");
serie.radarIndex = 0;
chart.AddData(0, new List<float> { 10, 20, 60, 40, 20 }, "data1");
serie1 = chart.AddSerie(SerieType.Radar, "test2");
serie1.radarIndex = 1;
chart.AddData(1, new List<float> { 10, 20, 60, 40, 20 }, "data2");
yield return new WaitForSeconds(1);
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: cb56350d2a2b24960a7174a1d3f2ea56
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,38 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEngine;
namespace XCharts
{
[DisallowMultipleComponent]
[ExecuteInEditMode]
public class Demo50_Scatter : MonoBehaviour
{
private ScatterChart chart;
void Awake()
{
chart = gameObject.GetComponent<ScatterChart>();
if (chart == null) return;
chart.series.SetSerieSymbolSizeCallback(SymbolSize, SymbolSelectedSize);
}
float SymbolSize(List<float> data)
{
//return Mathf.Clamp(data[1] * 10,1,100);
return (float)(Mathf.Sqrt(data[2]) / 6e2);
}
float SymbolSelectedSize(List<float> data)
{
//return Mathf.Clamp(data[1] * 10,1,100);
return (float)(Mathf.Sqrt(data[2]) / 5e2);
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 9f7e5ced8db104dcc8447f1e5ac903f4
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,104 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEngine;
namespace XCharts
{
[DisallowMultipleComponent]
[ExecuteInEditMode]
public class Demo60_Heatmap : MonoBehaviour
{
private HeatmapChart chart;
void Awake()
{
chart = gameObject.GetComponent<HeatmapChart>();
if (chart == null)
{
chart = gameObject.AddComponent<HeatmapChart>();
}
chart.title.text = "HeatmapChart";
chart.tooltip.type = Tooltip.Type.None;
chart.grid.left = 100;
chart.grid.right = 60;
chart.grid.bottom = 60;
//目前只支持Category
chart.xAxises[0].type = Axis.AxisType.Category;
chart.yAxises[0].type = Axis.AxisType.Category;
chart.xAxises[0].boundaryGap = true;
chart.xAxises[0].boundaryGap = true;
chart.xAxises[0].splitNumber = 10;
chart.yAxises[0].splitNumber = 10;
//清空数据重新添加
chart.RemoveData();
var serie = chart.AddSerie(SerieType.Heatmap, "serie1");
//设置样式
serie.itemStyle.show = true;
serie.itemStyle.borderWidth = 1;
serie.itemStyle.borderColor = Color.clear;
//设置高亮样式
serie.emphasis.show = true;
serie.emphasis.itemStyle.show = true;
serie.emphasis.itemStyle.borderWidth = 1;
serie.emphasis.itemStyle.borderColor = Color.black;
//设置视觉映射组件
chart.visualMap.enable = true;
chart.visualMap.max = 10;
chart.visualMap.range[0] = 0f;
chart.visualMap.range[1] = 10f;
chart.visualMap.orient = Orient.Vertical;
chart.visualMap.calculable = true;
chart.visualMap.location.align = Location.Align.BottomLeft;
chart.visualMap.location.bottom = 100;
chart.visualMap.location.left = 30;
//清空颜色重新添加
chart.visualMap.inRange.Clear();
var heatmapGridWid = 10f;
int xSplitNumber = (int)(chart.coordinateWidth / heatmapGridWid);
int ySplitNumber = (int)(chart.coordinateHeight / heatmapGridWid);
var colors = new List<string>{"#313695", "#4575b4", "#74add1", "#abd9e9", "#e0f3f8", "#ffffbf",
"#fee090", "#fdae61", "#f46d43", "#d73027", "#a50026"};
foreach (var str in colors)
{
chart.visualMap.inRange.Add(ThemeInfo.GetColor(str));
}
//添加xAxis的数据
for (int i = 0; i < xSplitNumber; i++)
{
chart.AddXAxisData((i + 1).ToString());
}
//添加yAxis的数据
for (int i = 0; i < ySplitNumber; i++)
{
chart.AddYAxisData((i + 1).ToString());
}
for (int i = 0; i < xSplitNumber; i++)
{
for (int j = 0; j < ySplitNumber; j++)
{
var value = 0f;
var rate = Random.Range(0, 101);
if (rate > 70) value = Random.Range(8f, 10f);
else value = Random.Range(1f, 8f);
var list = new List<float> { i, j, value };
//至少是一个三位数据x,y,value
chart.AddData(0, list);
}
}
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 14e10f24be7ee4f609b36b904224382d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,70 +0,0 @@
using System.Runtime.InteropServices;
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEngine;
namespace XCharts
{
[DisallowMultipleComponent]
[ExecuteInEditMode]
public class Demo70_Gauge : MonoBehaviour
{
private GaugeChart chart;
private float updateTime;
void Awake()
{
chart = gameObject.GetComponent<GaugeChart>();
if (chart == null)
{
chart = gameObject.AddComponent<GaugeChart>();
}
chart.title.text = "GaugeChart";
chart.RemoveData();
var serie = chart.AddSerie(SerieType.Gauge, "速度");
serie.min = 0;
serie.max = 220;
serie.startAngle = -125;
serie.endAngle = 125;
serie.center[0] = 0.5f;
serie.center[1] = 0.5f;
serie.radius[0] = 80;
serie.splitNumber = 5;
serie.animation.updateAnimation = true;
serie.arcShaped = true;
serie.titleStyle.show = true;
serie.titleStyle.textStyle.offset = new Vector2(0, 20);
serie.label.show = true;
serie.label.offset = new Vector3(0, -20);
serie.gaugeAxis.show = true;
serie.gaugeAxis.axisLine.width = 15;
serie.gaugePointer.show = true;
serie.gaugePointer.width = 15;
var value = UnityEngine.Random.Range(serie.min, serie.max);
chart.AddData(0, value, "km/h");
}
void Update()
{
updateTime += Time.deltaTime;
if (updateTime > 2)
{
updateTime = 0;
var value = UnityEngine.Random.Range(0, 220);
chart.UpdateData(0, 0, value);
}
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 250f744fcb07d4401994d964c4369d9d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,71 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System;
using UnityEngine;
namespace XCharts
{
[DisallowMultipleComponent]
[ExecuteInEditMode]
[RequireComponent(typeof(CoordinateChart))]
public class Demo_Dynamic : MonoBehaviour
{
public int maxCacheDataNumber = 100;
public float initDataTime = 2;
private CoordinateChart chart;
private float updateTime;
private float initTime;
private int initCount;
private int count;
private bool isInited;
private DateTime timeNow;
void Awake()
{
chart = gameObject.GetComponentInChildren<CoordinateChart>();
chart.RemoveData();
var serie = chart.AddSerie(SerieType.Line);
serie.symbol.type = SerieSymbolType.None;
serie.maxCache = maxCacheDataNumber;
chart.xAxises[0].maxCache = maxCacheDataNumber;
timeNow = DateTime.Now;
timeNow = timeNow.AddSeconds(-maxCacheDataNumber);
}
void Update()
{
if (initCount < maxCacheDataNumber)
{
int count = (int)(maxCacheDataNumber / initDataTime * Time.deltaTime);
for (int i = 0; i < count; i++)
{
timeNow = timeNow.AddSeconds(1);
string category = timeNow.ToString("hh:mm:ss");
float value = UnityEngine.Random.Range(60, 150);
chart.AddXAxisData(category);
chart.AddData(0, value);
initCount++;
if (initCount > maxCacheDataNumber) break;
}
chart.RefreshChart();
}
updateTime += Time.deltaTime;
if (updateTime >= 1)
{
updateTime = 0;
count++;
string category = DateTime.Now.ToString("hh:mm:ss");
float value = UnityEngine.Random.Range(60, 150);
chart.AddXAxisData(category);
chart.AddData(0, value);
chart.RefreshChart();
}
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: d7774c94c82584c0ca35e6f79d1fc29c
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,55 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEngine;
namespace XCharts
{
[DisallowMultipleComponent]
[ExecuteInEditMode]
[RequireComponent(typeof(CoordinateChart))]
public class Demo_LargeData : MonoBehaviour
{
public int maxCacheDataNumber = 3000;
public float initDataTime = 5;
private CoordinateChart chart;
private float initTime;
private int initCount = 0;
private System.DateTime timeNow;
void Awake()
{
chart = gameObject.GetComponentInChildren<CoordinateChart>();
timeNow = System.DateTime.Now;
chart.ClearAxisData();
chart.series.ClearData();
chart.series.list[0].maxCache = maxCacheDataNumber;
chart.xAxises[0].maxCache = maxCacheDataNumber;
chart.title.text = maxCacheDataNumber + "数据";
}
private void Update()
{
if (initCount < maxCacheDataNumber)
{
for (int i = 0; i < 10; i++)
{
initCount++;
if (initCount > maxCacheDataNumber) break;
chart.title.text = initCount + "数据";
timeNow = timeNow.AddSeconds(1);
float xvalue = Mathf.PI / 180 * initCount;
float yvalue = Mathf.Sin(xvalue);
chart.AddData(0, 15 + yvalue * 2);
chart.AddXAxisData(timeNow.ToString("hh:mm:ss"));
}
}
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: c777ceb41c4c743d2ba0ea573287be9e
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,46 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEngine;
namespace XCharts
{
[DisallowMultipleComponent]
[ExecuteInEditMode]
[RequireComponent(typeof(PieChart))]
public class Demo_PieChart : MonoBehaviour
{
private PieChart chart;
private float time;
private int count = 0;
private void Awake()
{
chart = transform.GetComponent<PieChart>();
chart.ClearData();
}
private void Update()
{
time += Time.deltaTime;
if (time > 1)
{
time = 0;
if (count < 5)
{
chart.AddData(0, Random.Range(10, 100), "time" + count);
}
else
{
int index = count % 5;
chart.UpdateData(0, Random.Range(10, 100), index);
}
count++;
}
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 8c85e69c8e4374481be85fda06a45209
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,48 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEngine;
using UnityEngine.UI;
namespace XCharts
{
[DisallowMultipleComponent]
[ExecuteInEditMode]
public class Demo_Test : MonoBehaviour
{
private float updateTime = 0;
BaseChart chart;
void Awake()
{
chart = gameObject.GetComponent<BaseChart>();
}
void Update()
{
updateTime += Time.deltaTime;
if (chart && updateTime > 2)
{
updateTime = 0;
var serie = chart.series.GetSerie(0);
serie.animation.updateAnimation = true;
var dataCount = serie.dataCount;
if (chart is HeatmapChart)
{
var dimension = serie.GetSerieData(0).data.Count - 1;
for (int i = 0; i < dataCount; i++)
{
chart.UpdateData(0, i, dimension, Random.Range(0, 10));
}
}
else
{
chart.UpdateData(0, Random.Range(0, dataCount), Random.Range(10, 90));
}
}
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: e538728f2646249ae9c9206b8ceffe25
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,110 +0,0 @@
# XCharts API
[返回首页](https://github.com/monitor1394/unity-ugui-XCharts)
[XCharts配置项手册](XCharts配置项手册.md)
[XCharts问答](XCharts问答.md)
## `BaseChart`
* `BaseChart.themeInfo`:主题组件`ThemeInfo`
* `BaseChart.title`:标题组件`Title`
* `BaseChart.legend`:图例组件`Legend`
* `BaseChart.tooltip`:提示框组件`Tooltip`
* `BaseChart.series`:系列列表`Series`
* `BaseChart.chartWidth`:图表的宽。
* `BaseChart.chartHeight`:图表的高。
* `BaseChart.customDrawCallback`:自定义绘制回调函数。
* `BaseChart.SetSize(float width, float height)`:设置图表的大小。
* `BaseChart.ClearData()`:清除所有数据,系列列表会保留,只是移除列表中系列的数据。
* `BaseChart.RemoveData()`:清除所有系列和图例数据,系列列表也会被清除。
* `BaseChart.RemoveData(string serieName)`:清除指定系列名称的数据。
* `BaseChart.AddSerie(SerieType type, string serieName = null, bool show = true)`:添加一个系列到系列列表中。
* `BaseChart.AddData(string serieName, float data, string dataName = null)`:添加一个数据到指定的系列中。
* `BaseChart.AddData(int serieIndex, float data, string dataName = null)`:添加一个数据到指定的系列中。
* `BaseChart.AddData(string serieName, List<float> multidimensionalData, string dataName = null)`:添加多维数据`x,y,z...`到指定的系列中。
* `BaseChart.AddData(int serieIndex, List<float> multidimensionalData, string dataName = null)`:添加多维数据`x,y,z...`到指定的系列中。
* `BaseChart.AddData(string serieName, float xValue, float yValue, string dataName)`:添加`x,y`数据到指定系列中。
* `BaseChart.AddData(int serieIndex, float xValue, float yValue, string dataName = null)`:添加`x,y`数据到指定系列中。
* `BaseChart.UpdateData(string serieName,int dataIndex, float value)`:更新指定系列中的指定索引数据。
* `BaseChart.UpdateData(int serieIndex,int dataIndex, float value)`:更新指定系列中的指定索引数据。
* `BaseChart.UpdateData(string serieName, int dataIndex, List<float> multidimensionalData)`:更新指定系列指定索引的数据项的多维数据。
* `BaseChart.UpdateData(int serieIndex, int dataIndex, List<float> multidimensionalData)`:更新指定系列指定索引的数据项的多维数据。
* `BaseChart.UpdateData(string serieName, int dataIndex, int dimension, float value)`更新指定系列指定索引指定维数的数据。维数从0开始。
* `BaseChart.UpdateData(int serieIndex, int dataIndex, int dimension, float value)`更新指定系列指定索引指定维数的数据。维数从0开始。
* `BaseChart.UpdateDataName(string serieName,int dataIndex, string dataName)`:更新指定系列中的指定索引数据名称。
* `BaseChart.UpdateDataName(int serieIndex, int dataIndex, string dataName)`:更新指定系列中的指定索引数据名称。
* `BaseChart.SetActive(string serieName, bool active)`:设置指定系列是否显示。
* `BaseChart.SetActive(int serieIndex, bool active)`:设置指定系列是否显示。
* `BaseChart.IsActive(string serieName)`:获取指定系列是否显示。
* `BaseChart.IsActive(int serieIndex)`:获取指定系列是否显示。
* `BaseChart.IsActiveByLegend(string legendName)`:获得指定图例名字的系列是否显示。
* `BaseChart.RefreshChart()`:在下一帧刷新图表。
* `BaseChart.RefreshLabel()`:在下一帧刷新文本标签。
* `BaseChart.UpdateTheme(Theme theme)`:切换图表主题。
* `BaseChart.AnimationEnable(bool flag)`:启用或关闭起始动画。
* `BaseChart.AnimationStart()`:开始初始动画。
* `BaseChart.AnimationStop()`:停止初始化动画。
* `BaseChart.AnimationReset()`:重置初始动画,重新播放。
* `BaseChart.ClickLegendButton(int legendIndex, string legendName, bool show)`:点击图例按钮。
## `CoordinateChart`
* `CoordinateChart.grid`:网格组件 `Grid`
* `CoordinateChart.xAxises`:左右两个 `X` 轴组件 `XAxis`
* `CoordinateChart.yAxises`:左右两个 `Y` 轴组件 `YAxis`
* `CoordianteChart.xAxis0`X轴
* `CoordianteChart.xAxis1`X轴
* `CoordianteChart.xAxis0`Y轴
* `CoordianteChart.yAxis1`Y轴
* `CoordinateChart.dataZoom`:区域缩放组件 `DataZoom`
* `CoordinateChart.coordinateX`:坐标系的左下角坐标 `X`
* `CoordinateChart.coordinateY`:坐标系的左下角坐标 `Y`
* `CoordinateChart.coordinateWidth`:坐标系的宽。
* `CoordinateChart.coordinateHeight`:坐标系的高。
* `CoordinateChart.ClearAxisData()`清除所有x轴和y轴的类目数据。
* `CoordinateChart.AddXAxisData(string category, int xAxisIndex = 0)`:添加一个类目数据到指定的 `X` 轴。
* `CoordinateChart.AddYAxisData(string category, int yAxisIndex = 0)`:添加一个类目数据到指定的 `Y` 轴。
* `CoordinateChart.IsValue()`:是否是纯数值坐标。
* `CoordinateChart.RefreshDataZoom()`在下一帧刷新DataZoom组件。
* `CoordinateChart.RefreshAxisMinMaxValue()`:立即刷新数值坐标轴的最大最小值(更新坐标轴标签并触发重绘)。
## `LineChart`
* 继承 `BaseChart`
* 继承自 `CoordinateChart`
## `BarChart`
* 继承自 `BaseChart`
* 继承自 `CoordinateChart`
## `PieChart`
* 继承自 `BaseChart`
## `RadarChart`
* 继承自 `BaseChart`
* `RadarChart.radars`:雷达坐标系组件列表 `Radar`
* `RadarChart.RemoveRadar()`:移除所有雷达坐标系组件。
* `RadarChart.AddRadar(Radar radar)`:添加雷达坐标系组件。
* `RadarChart.AddRadar(Radar.Shape shape, Vector2 center, float radius, int splitNumber = 5,float lineWidth = 0.6f, bool showIndicator = true, bool showSplitArea = true)`:添加雷达坐标系组件。
* `RadarChart.AddIndicator(int radarIndex, string name, float min, float max)`:添加指示器。
* `RadarChart.UpdateIndicator(int radarIndex, int indicatorIndex, string name, float min, float max)`:更新指示器。
* `RadarChart.GetRadar(int radarIndex)`:获得指定索引的雷达坐标系组件。
* `RadarChart.GetIndicator(int radarIndex, int indicatorIndex)`:获得指定雷达坐标系组件指定索引的指示器。
## `ScatterChart`
* 继承自 `BaseChart`
* 继承自 `CoordinateChart`
## `HeatmapChart`
* 继承自 `BaseChart`
* 继承自 `CoordinateChart`
[返回首页](https://github.com/monitor1394/unity-ugui-XCharts)
[XCharts配置项手册](XCharts配置项手册.md)
[XCharts问答](XCharts问答.md)

View File

@@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: 81071e0166b9e49958800af4678e69ae
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,804 +0,0 @@
# 配置项手册
[返回首页](https://github.com/monitor1394/unity-ugui-XCharts)
[XChartsAPI接口](XChartsAPI.md)
[XCharts问答](XCharts问答.md)
主组件:
* [Axis 坐标轴](#XAxis)
* [DataZoom 区域缩放](#DataZoom)
* [Grid 网格](#Grid)
* [Legend 图例](#Legend)
* [Radar 雷达](#Radar)
* [Series 系列](#Series)
* [Serie-Line 折线图](#Serie-Line)
* [Serie-Bar 柱形图](#Serie-Bar)
* [Serie-Pie 饼图](#Serie-Pie)
* [Serie-Radar 雷达图](#Serie-Radar)
* [Serie-Scatter 散点图](#Serie-Scatter)
* [Serie-Heatmap 热力图](#Serie-Heatmap)
* [Serie-Gauge 仪表盘](#Serie-Gauge)
* [Settings 设置](#Settings)
* [Theme 主题](#Theme)
* [Tooltip 提示框](#Tooltip)
* [Title 标题](#Title)
* [VisualMap 视觉映射](#VisualMap)
子组件:
* [AreaStyle 区域填充样式](#AreaStyle)
* [AxisLabel 坐标轴刻度标签](#AxisLabel)
* [AxisLine 坐标轴轴线](#AxisLine)
* [AxisName 坐标轴名称](#AxisName)
* [AxisSplitArea 坐标轴分割区域](#AxisSplitArea)
* [AxisTick 坐标轴刻度](#AxisTick)
* [Emphasis 高亮样式](#Emphasis)
* [ItemStyle 图形样式](#ItemStyle)
* [LineArrow 折线图箭头](#LineArrow)
* [LineStyle 折线图样式](#LineStyle)
* [Location 位置](#Location)
* [SerieAnimation 动画](#SerieAnimation)
* [SerieData 数据项](#SerieData)
* [SerieLabel 图形上的文本标签](#SerieLabel)
* [SerieSymbol 图形标记](#SerieSymbol)
* [TextStyle 文本样式](#TextStyle)
## `Theme`
主题组件。主题用来配置图表的全局配色等其他参数。
相关参数:
* `theme`:内置主题类型。有`Default``Light``Dark`三种可选内置主题。
* `font`:所有文字的通用字体。
* `backgroundColor`:图表背景颜色。
* `titleTextColor`:主题的主标题文字颜色。
* `titleSubTextColor`:主题的副标题文字颜色。
* `legendTextColor`:图例的激活时文字颜色。
* `legendUnableColor`:图例的非激活时文字颜色。
* `axisTextColor`:坐标轴的文字颜色。
* `axisLineColor`:坐标轴的轴线颜色。
* `axisSplitLineColor`:坐标轴的分割线颜色,默认和轴线颜色一致。
* `tooltipBackgroundColor`:提示框的背景颜色。
* `tooltipFlagAreaColor`:提示框的阴影指示器的颜色。
* `tooltipTextColor`:提示框的文字颜色。
* `tooltipLabelColor`:提示框的十字指示器坐标轴标签的背景颜色。
* `tooltipLineColor`:提示框的指示线的颜色。
* `dataZoomTextColor`:区域缩放的文字颜色。
* `dataZoomLineColor`:区域缩放的线条颜色。
* `dataZoomSelectedColor`:区域缩放的选中区域颜色。
* `colorPalette`:调色盘颜色列表。如果系列没有设置颜色,则会依次循环从该列表中取颜色作为系列颜色。
相关接口:
* `GetColor(int index)`:获得调色盘对应系列索引的颜色值。
* `GetColorStr(int index)`:获得指定系列索引的十六进制颜色值字符串。
* `GetColor(string hexColorStr)`将字符串颜色值转成Color。
## `Title`
标题组件,包含主标题和副标题。
相关参数:
* `show`:是否显示标题组件。
* `text`:主标题文本,支持使用 `\n` 换行。
* `textStyle`:主标题文本样式 [TextStyle](#TextStyle)。
* `subText`:副标题文本,支持使用 `\n` 换行。
* `subTextStyle`:副标题文本样式 [TextStyle](#TextStyle)。
* `itemGap`:主副标题之间的间距。
* `location`:标题显示位置 [Location](#Location)。
## `TitleStyle`
标题样式。
* `show`:是否显示标题组件。
* `rotate`:旋转。
* `offset`:偏移。
* `color`:颜色。
* `fontSize`:字体大小。
* `fontStyle`:字体风格。
## `Legend`
图例组件。图例组件展现了不同系列的标记,颜色和名字。可以通过点击图例控制哪些系列不显示。
相关参数:
* `show`:是否显示图例组件。
* `selectedMode`:选择模式。控制是否可以通过点击图例改变系列的显示状态。默认开启图例选择,可以设成 `None` 关闭。有以下三种选择方式:
* `Multiple`:多选。
* `Single`:单选。
* `None`:无法选择。
* `orient`:布局方式是横还是竖。
* `Horizonal`:水平。
* `Vertical`:垂直。
* `location`:图例的显示位置 [Location](#Location)。
* `itemWidth`:每个图例项的宽度。
* `itemHeight`:每个图例项的高度。
* `itemGap`:图例每项之间的间隔。横向布局时为水平间隔,纵向布局时为纵向间隔。
* `itemFontSize`:图例项的字体大小。
* `formatter`:图例内容字符串模版格式器。支持用 `\n` 换行。模板变量为图例名称 `{name}`
* `data`:图例的数据数组。数组项通常为一个字符串,每一项代表一个系列的 `name`(如果是饼图,也可以是饼图单个数据的 `name`)。如果 `data` 没有被指定,会自动从当前系列中获取。指定 `data` 时里面的数据项和 `serie` 匹配时才会生效。
相关接口:
* `ClearData()`:清空数据。
* `ContainsData(string name)`:是否包括指定名字的图例。
* `RemoveData(string name)`:移除指定名字的图例。
* `AddData(string name)`:添加图例项。
* `GetData(int index)`:获得指定索引的图例。
* `GetIndex(string legendName)`:获得指定图例的索引。
## `Radar`
* `shape`:雷达图绘制类型。
* `Polygon`:多边形。
* `Circle`:圆形。
* `positionType`:显示位置类型。
* `Vertice`:显示在顶点处。
* `Between`:显示在顶点之间。
* `radius`:雷达图的半径。
* `center`雷达图的中心点。数组的第一项是横坐标第二项是纵坐标。当值为0-1之间时表示百分比设置成百分比时第一项是相对于容器宽度第二项是相对于容器高度。
* `lineStyle`:线条样式 [LineStyle](#LineStyle)。
* `splitArea`:分割区域 [AxisSplitArea](#AxisSplitArea)。
* `indicator`:是否显示指示器。
* `indicatorGap`:指示器和雷达的间距。
* `indicatorList`指示器列表 [Radar.Indicator](#Radar.Indicator)。
## `Radar.Indicator`
* `name`:指示器名称。
* `max`:指示器的最大值,默认为 0 无限制。
* `min`:指示器的最小值,默认为 0 无限制。
* `textStyle`:文本样式 [TextStyle](#TextStyle)。
## `TextStyle`
* `rotate`:旋转。
* `offset`:偏移。
* `color`:颜色。
* `fontSize`:字体大小。
* `fontStyle`:字体风格。
## `Tooltip`
提示框组件。
相关参数:
* `show`:是否显示提示框组件。
* `type`:提示框指示器类型。指示器类型有:
* `Line`:线性指示器。
* `Shadow`:阴影指示器。
* `None`:无指示器。
* `Corss`十字准星指示器。坐标轴显示Label和交叉线。
* `formatter`:提示框内容字符串模版格式器。支持用 `\n``<br/>` 换行。当`formatter`不为空时,优先使用`formatter`,否则使用`itemFormatter`。示例:`{a}:{c}``{a1}:{c1:f1}`。其中变量 `{a}`, `{b}`, `{c}`, `{d}` 在不同图表类型下代表数据含义为:
* 折线区域图、柱状条形图、K线图 : `{a}`(系列名称),`{b}`(类目值),`{c}`(数值), `{d}`(无)。
* 散点图(气泡)图 : `{a}`(系列名称),`{b}`(数据名称),`{c}`(数值数组), `{d}`(无)。
* 地图 : `{a}`(系列名称),`{b}`(区域名称),`{c}`(合并数值), `{d}`(无)。
* 饼图、仪表盘、漏斗图: `{a}`(系列名称),`{b}`(数据项名称),`{c}`(数值), `{d}`(百分比)。
* `titleFormatter`:提示框标题内容的字符串模版格式器。支持用 `\n``<br/>` 换行。仅当`itemFormatter`生效时才有效。
* `itemFormatter`:提示框单个`serie`或数据项内容的字符串模版格式器。支持用 `\n``<br/>` 换行。当`formatter`不为空时,优先使用`formatter`,否则使用`itemFormatter`
* `fixedWidth`:固定宽度。当同时设置 `fixedWidth``minWidth` 时,`fixedWidth``minWidth` 优先级高。
* `fixedHeight`:固定高度。当同时设置 `fixedHeight``minHeight` 时,`fixedHeight``minHeight` 优先级高。
* `minWidth`:最小宽度。当同时设置 `fixedWidth``minWidth` 时,`fixedWidth``minWidth` 优先级高。
* `minHeight`:最小高度。当同时设置 f`ixedHeight``minHeight` 时,`fixedHeight``minHeight` 优先级高。
* `fontSize`:文字的字体大小。
* `fontStyle`:文字的字体风格。
* `forceENotation`是否强制使用科学计数法格式化显示数值。默认为false当小数精度大于3时才采用科学计数法。
## `DataZoom`
区域缩放组件。用于区域缩放,从而能自由关注细节的数据信息,或者概览数据整体,或者去除离群点的影响。
目前只支持控制 `X` 轴。
相关参数:
* `enable`:开启或关闭缩放区域功能。
* `supportInside`:是否支持内置缩放。内置于坐标系中,可在坐标系上通过鼠标拖拽、鼠标滚轮、手指滑动(触屏上)来缩放或漫游坐标系。
* `supportSlider`:是否支持滑动条缩放。有单独的滑动条,可在滑动条上进行缩放或漫游。
* ~~`filterMode`:数据过滤,暂未启用。支持以下几种类型:~~
* ~~`Filter`:当前数据窗口外的数据,被 过滤掉。即 会 影响其他轴的数据范围。每个数据项,只要有一个维度在数据窗口外,整个数据项就会被过滤掉。~~
* ~~`WeakFilter`:当前数据窗口外的数据,被 过滤掉。即 会 影响其他轴的数据范围。每个数据项,只有当全部维度都在数据窗口同侧外部,整个数据项才会被过滤掉。~~
* ~~`Empty`:当前数据窗口外的数据,被 设置为空。即 不会 影响其他轴的数据范围。~~
* ~~`None`:不过滤数据,只改变数轴范围。~~
* ~~`xAxisIndex`:控制哪一个 `x` 轴。~~
* ~~`yAxisIndex`:控制哪一个 `y` 轴。~~
* `showDataShadow`:是否显示数据阴影。数据阴影可以简单地反应数据走势。
* `showDetail`:是否显示 `detail`,即拖拽时候显示详细数值信息。
* `zoomLock`:是否锁定选择区域(或叫做数据窗口)的大小。如果设置为 `true` 则锁定选择区域的大小,也就是说,只能平移,不能缩放。
* ~~`realtime`:拖动时,是否实时更新系列的视图。如果设置为 `false`,则只在拖拽结束的时候更新。~~
* ~~`backgroundColor`:组件的背景颜色。~~
* `bottom`:组件离容器下侧的距离。
* `height`:组件高度。
* `rangeMode`:取值类型是取绝对值还是百分比。
* `Percent`:百分比。
* `start`数据窗口范围的起始百分比。范围是0 ~ 100。
* `end`数据窗口范围的结束百分比。范围是0 ~ 100。
* `scrollSensitivity`:缩放区域组件的敏感度。值越高每次缩放所代表的数据越多。
* `fontSize`:字体大小。
* `fontStyle`:字体样式。
* `minShowNum`最小显示数据个数。当DataZoom放大到最大时最小显示的数据个数。
## `VisualMap`
视觉映射组件。用于进行『视觉编码』,也就是将数据映射到视觉元素(视觉通道)。
* `enable`:开启或关闭视觉映射功能。
* `show`:是否显示组件。如果设置为 false不会显示但是数据映射的功能还存在。
* `type`:组件类型。支持以下类型:
* `Continuous`:连续型。
* ~~`Piecewise`:分段型。~~
* ~~`selectedMode`:分段型的选择模式,支持以下模式:~~
* ~~`Multiple`:多选。~~
* ~~`Single`:单选。~~
* `min`:允许的最小值。'min' 必须用户指定。[visualMap.min, visualMap.max] 形成了视觉映射的『定义域』。
* `max`:允许的最大值。'max' 必须用户指定。[visualMap.min, visualMax.max] 形成了视觉映射的『定义域』。
* `range`指定手柄对应数值的位置。range 应在 min max 范围内。
* ~~`text`:两端的文本,如 ['High', 'Low']。~~
* ~~`textGap`两端文字主体之间的距离单位为px。~~
* `splitNumber`对于连续型数据自动平均切分成几段默认为0时自动匹配inRange颜色列表大小。
* `calculable`:是否显示拖拽用的手柄(手柄能拖拽调整选中范围)。
* ~~`realtime`:拖拽时,是否实时更新。~~
* `itemWidth`:图形的宽度,即颜色条的宽度。
* `itemHeight`:图形的高度,即颜色条的高度。
* `borderWidth`边框线宽单位px。
* `dimension`:指定用数据的『哪个维度』,映射到视觉元素上。『数据』即 series.data。从1开始默认为0取 data 中最后一个维度。
* `hoverLink`:打开 hoverLink 功能时,鼠标悬浮到 visualMap 组件上时,鼠标位置对应的数值 在 图表中对应的图形元素,会高亮。
* `orient`:布局方式是横还是竖。
* `location`:组件显示在图表中的位置。
* `inRange`:定义 在选中范围中 的视觉颜色。
* ~~`outOfRange`:定义 在选中范围外 的视觉颜色。~~
## `Grid`
网格组件。直角坐标系内绘图网格,单个 `grid` 内最多可以放置上下两个 `X` 轴,左右两个 `Y` 轴。可以在网格上绘制折线图,柱状图,散点图(气泡图)。目前最多只能存在一个 `grid` 组件。
相关参数:
* `show`:是否显示直角坐标系网格组件。
* `left`:组件离容器左侧的距离。
* `right`:组件离容器右侧的距离。
* `top`:组件离容器顶部的距离。
* `bottom`:组件离容器底部的距离。
* `backgroundColor`:背景颜色。
## `GaugeAxis`
仪表盘坐标轴。
* `axisLine`:坐标轴轴线样式。
* `splitLine`:坐标轴分割线样式。
* `axisTick`:坐标轴刻度样式。
* `axisLabel`:坐标轴刻度标签样式。
* `axisLabelText`坐标轴刻度标签自定义内容。当内容为空时axisLabel根据刻度自动显示内容否则取自该列表定义的内容。
## `GaugePointer`
仪表盘指针。
* `width`:指针宽度。
* `length`指针长度。当为0-1的浮点数时表示相对仪表盘半径的百分比。
## `XAxis`
直角坐标系 `grid` 中的 `X` 轴。单个 `grid` 组件最多只能放上下两个 `X` 轴。两个 `X` 轴存储在 `xAxises` 中。
相关参数:
* `show`:是否显示 `X` 轴。默认 `xAxises[0]``true``xAxises[1]``false`
* `type`:坐标轴类型。默认为 `Category`。支持以下类型:
* `Value`:数值轴,用于连续数据。
* `Category`:类目轴,适用于离散的类目数据,为该类型时必须通过 `data` 设置类目数据。
* `Log`:对数轴,适用于对数数据。
* `logBaseE`:对数轴是否以自然数 `e` 为底数,为 `true``logBase` 失效,只在对数轴(`type:'Log'`)中有效。
* `logBase`:对数轴的底数,只在对数轴(`type:'Log'`)中有效。
* `minMaxType`:坐标轴刻度最大最小值显示类型。默认为 `Default`。有以下三种类型:
* `Default`0-最大值。
* `MinMax`:最小值-最大值。
* `Custom`:自定义的最小值-最大值。
* `min`:设定的坐标轴刻度最小值,当 `minMaxType``Custom` 时有效。
* `max`:设定的坐标轴刻度最大值,当 `minMaxType``Custom` 时有效。
* `splitNumber`:坐标轴的分割段数。默认为 `5`。当 `splitNumber` 设为 `0` 时,表示绘制所有的类目数据。
* `interval`:强制设置坐标轴分割间隔。无法在类目轴中使用。设置改值时 `splitNumber` 无效。
* `splitLineType`:分割线类型。默认为 `Dashed`。有以下五种类型:
* `None`:不显示分割线。
* `Solid`:实线。
* `Dashed`:虚线。
* `Dotted`:点线。
* `DashDot`:点划线。
* `DashDotDot`:双点划线。
* `boundaryGap`:坐标轴两边是否留白。默认为 `true`
* `maxCache`类目数据中可缓存的最大数据量。默认为0没有限制大于0时超过指定值会移除旧数据再插入新数据。
* `data`:类目数据,在类目轴(`type: 'Category'`)中有效。
* `axisLine`:坐标轴轴线相关配置 [AxisLine](#AxisLine)。
* `axisName`:坐标轴名称相关配置 [AxisName](#AxisName)。
* `axisTick`:坐标轴刻度相关配置 [AxisTick](#AxisTick)。
* `axisLabel`:坐标轴刻度标签 [AxisLabel](#AxisLabel)。
* `splitArea`:坐标轴轴线坐标轴分割区域 [SplitArea](#SplitArea)。
相关接口:
* `ClearData()`:清空类目数据。
* `IsCategory()`:是否为类目轴。
* `IsValue()`:是否为数值轴。
* `AddData(string category, int maxDataNumber)`:添加一个类目到类目数据列表。
## `YAxis`
直角坐标系 `grid` 中的 `Y` 轴。单个 `grid` 组件最多只能放左右两个 `Y` 轴。两个 `Y` 轴存储在 `yAxises` 中。
相关参数:
* `show`:是否显示 `Y` 轴。默认 `yAxises[0]``true``yAxises[1]``false`
* `type`:坐标轴类型。默认为 `Value`。有以下两种类型:
* `Value`:数值轴,用于连续数据。
* `Category`:类目轴,适用于离散的类目数据,为该类型时必须通过 `data` 设置类目数据。
* `minMaxType`:坐标轴刻度最大最小值显示类型。默认为 `Default`。有以下三种类型:
* `Default`0-最大值。
* `MinMax`:最小值-最大值。
* `Custom`:自定义的最小值-最大值。
* `min`:设定的坐标轴刻度最小值,当 `minMaxType``Custom` 时有效。
* `max`:设定的坐标轴刻度最大值,当 `minMaxType``Custom` 时有效。
* `splitNumber`:坐标轴的分割段数。默认为 `5`
* `interval`:强制设置坐标轴分割间隔。无法在类目轴中使用。设置改值时 `splitNumber` 无效。
* `splitLineType`:分割线类型。默认为 `Dashed`。支持以下五种类型:
* `None`:不显示分割线。
* `Solid`:实线。
* `Dashed`:虚线。
* `Dotted`:点线。
* `DashDot`:点划线。
* `DashDotDot`:双点划线。
* `boundaryGap`:坐标轴两边是否留白。默认为 `false`
* `data`:类目数据,在类目轴(`type: 'Category'`)中有效。
* `axisLine`:坐标轴轴线相关配置 [AxisLine](#AxisLine)。
* `axisName`:坐标轴名称相关配置 [AxisName](#AxisName)。
* `axisTick`:坐标轴刻度相关配置 [AxisTick](#AxisTick)。
* `axisLabel`:坐标轴刻度标签 [AxisLabel](#AxisLabel)。
* `splitArea`:坐标轴轴线坐标轴分割区域 [SplitArea](#SplitArea)。
相关接口:
* `ClearData()`:清空类目数据。
* `IsCategory()`:是否为类目轴。
* `IsValue()`:是否为数值轴。
* `AddData(string category, int maxDataNumber)`:添加一个类目到类目数据列表。
## `Series`
系列列表。每个系列通过 type 决定自己的图表类型。
相关参数:
* `show`:系列是否显示在图表上。
* `type`:系列的图表类型。有以下几种类型:
* `Line`:折线图。
* `Bar`:柱状图。
* `Pie`:饼图。
* `Radar`:雷达图。
* `Scatter`:散点图。
* `EffectScatter`:带有涟漪特效动画的散点图。
* `name`:系列名称。用于 `tooltip` 的显示,`legend` 的图例筛选。
* `stack`:数据堆叠。同个类目轴上系列配置相同的 `stack` 值后,后一个系列的值会在前一个系列的值上相加。
* `axisIndex`:使用的坐标轴轴的 `index`,在单个图表实例中存在多个坐标轴轴的时候有用。
* `radarIndex`:雷达图所使用的 `radar` 组件的 `index`
* `minShow`:系列显示数据的最小索引。
* `maxShow`:系列显示数据的最大索引。
* `maxCache`:系列中可缓存的最大数据量。默认为`0`没有限制大于0时超过指定值会移除旧数据再插入新数据。
* `sampleDist`采样的最小水平像素距离,默认为`0`时不采样。当两个数据点间的水平像素距离小于该值时,开启采样,保证两点间的水平像素距离不小于该值。
* `sampleType`:采样类型。当`sampleDist`大于`0`时有效。支持以下五种采样类型:
* `Peak`:取峰值。当过滤点的平均值大于等于`sampleAverage`时,取最大值;反之取最小值。
* `Average`:取过滤点的平均值。
* `Max`:取过滤点的最大值。
* `Min`:取过滤点的最小值。
* `Sum`:取过滤点之和。
* `sampleAverage`:设定的采样平均值。当 `sampleType``Peak` 时,用于和过滤数据的平均值做对比是取最大值还是最小值。默认为`0`时会实时计算所有数据的平均值。
* `areaStyle`:区域填充样式 [AreaStyle](#AreaStyle)。
* `symbol`:标记的图形 [SerieSymbol](#SerieSymbol)。
* `lineType`:折线图样式类型。支持以下十种类型:
* `Normal`:普通折线图。
* `Smooth`:平滑曲线。
* `SmoothDash`:平滑虚线。
* `StepStart`:阶梯线图:当前点。
* `StepMiddle`:阶梯线图:当前点和下一个点的中间。
* `StepEnd`:阶梯线图:下一个拐点。
* `Dash`:虚线。
* `Dot`:点线。
* `DashDot`:点划线。
* `DashDotDot`:双点划线。
* `lineStyle`:线条样式 [LineStyle](#LineStyle)。
* `barType`:柱状图类型。以下几种类型:
* `Normal`:普通柱状图。
* `Zebra`:斑马柱状图。
* `Capsule`:胶囊柱状图。
* `barPercentStack`:是否百分比堆叠柱状图,相同 `stack``serie` 只要有一个 `barPercentStack``true`,则就显示成百分比堆叠柱状图。
* `barWidth`:柱条的宽度,不设时自适应。支持设置成相对于类目宽度的百分比。
* `barGap`:不同系列的柱间距离。为百分比(如 `'0.3f'`,表示柱子宽度的 `30%`)。如果想要两个系列的柱子重叠,可以设置 `barGap``'-1f'`。这在用柱子做背景的时候有用。在同一坐标系上,此属性会被多个 `'bar'` 系列共享。此属性应设置于此坐标系中最后一个 `'bar'` 系列上才会生效,并且是对此坐标系中所有 `'bar'` 系列生效。
* `barCategoryGap`同一系列的柱间距离默认为类目间距的20%,可设固定值。在同一坐标系上,此属性会被多个 `'bar'` 系列共享。此属性应设置于此坐标系中最后一个 `'bar'` 系列上才会生效,并且是对此坐标系中所有 `'bar'` 系列生效。
* `barZebraWidth`:斑马线的粗细。`barType``Zebra` 时有效。
* `barZebraGap`:斑马线的间距。`barType``Zebra` 时有效。
* `pieClickOffset`鼠标点击时是否开启偏移一般用在PieChart图表中。
* `pieRoseType`:是否展示成南丁格尔图,通过半径区分数据大小。
* `pieSpace`:饼图项间的空隙留白。
* `pieCenter`:饼图的中心点。
* `pieRadius`:饼图的半径。`radius[0]` 表示内径,`radius[1]` 表示外径。
* `arcShaped`:启用弧形圆角效果。目前只在仪表盘和圆环饼图中有效。
* `label`:图形上的文本标签 [SerieLabel](#SerieLabel),可用于说明图形的一些数据信息,比如值,名称等。
* `emphasis`:高亮样式 [Emphasis](#Emphasis)。
* `animation`:起始动画 [SerieAnimation](#SerieAnimation)。
* `lineArrow`:折线图的箭头 [LineArrow](#LineArrow)。
* `data`:系列中的数据项 [SerieData](#SerieData) 数组,可以设置`1``n`维数据。
## `Serie-Line`
折线图系列。
* `show`:系列是否显示在图表上。
* `type``Line`
* `name`:系列名称。用于 `tooltip` 的显示,`legend` 的图例筛选。
* `stack`:数据堆叠。同个类目轴上系列配置相同的 `stack` 值后,后一个系列的值会在前一个系列的值上相加。
* `axisIndex`:使用的坐标轴轴的 `index`,在单个图表实例中存在多个坐标轴轴的时候有用。
* `minShow`:系列显示数据的最小索引。
* `maxShow`:系列显示数据的最大索引。
* `maxCache`:系列中可缓存的最大数据量。默认为`0`没有限制大于0时超过指定值会移除旧数据再插入新数据。
* `sampleDist`采样的最小水平像素距离,默认为`0`时不采样。当两个数据点间的水平像素距离小于该值时,开启采样,保证两点间的水平像素距离不小于该值。
* `sampleType`:采样类型。当`sampleDist`大于`0`时有效。支持以下五种采样类型:
* `Peak`:取峰值。当过滤点的平均值大于等于`sampleAverage`时,取最大值;反之取最小值。
* `Average`:取过滤点的平均值。
* `Max`:取过滤点的最大值。
* `Min`:取过滤点的最小值。
* `Sum`:取过滤点之和。
* `sampleAverage`:设定的采样平均值。当 `sampleType``Peak` 时,用于和过滤数据的平均值做对比是取最大值还是最小值。默认为`0`时会实时计算所有数据的平均值。
* `areaStyle`:区域填充样式 [AreaStyle](#AreaStyle)。
* `symbol`:标记的图形 [SerieSymbol](#SerieSymbol)。
* `lineType`:折线图样式类型。支持以下十种类型:
* `Normal`:普通折线图。
* `Smooth`:平滑曲线。
* `SmoothDash`:平滑虚线。
* `StepStart`:阶梯线图:当前点。
* `StepMiddle`:阶梯线图:当前点和下一个点的中间。
* `StepEnd`:阶梯线图:下一个拐点。
* `Dash`:虚线。
* `Dot`:点线。
* `DashDot`:点划线。
* `DashDotDot`:双点划线。
* `lineStyle`:线条样式 [LineStyle](#LineStyle)。
* `label`:图形上的文本标签 [SerieLabel](#SerieLabel),可用于说明图形的一些数据信息,比如值,名称等。
* `emphasis`:高亮样式 [Emphasis](#Emphasis)。
* `animation`:起始动画 [SerieAnimation](#SerieAnimation)。
* `lineArrow`:折线图的箭头 [LineArrow](#LineArrow)。
* `data`:系列中的数据项 [SerieData](#SerieData) 数组,可以设置`1``n`维数据。
## `Serie-Bar`
折线图系列。
* `show`:系列是否显示在图表上。
* `type``Bar`
* `name`:系列名称。用于 `tooltip` 的显示,`legend` 的图例筛选。
* `stack`:数据堆叠。同个类目轴上系列配置相同的 `stack` 值后,后一个系列的值会在前一个系列的值上相加。
* `axisIndex`:使用的坐标轴轴的 `index`,在单个图表实例中存在多个坐标轴轴的时候有用。
* `minShow`:系列显示数据的最小索引。
* `maxShow`:系列显示数据的最大索引。
* `maxCache`:系列中可缓存的最大数据量。默认为`0`没有限制大于0时超过指定值会移除旧数据再插入新数据。
* `barType`:柱状图类型。以下几种类型:
* `Normal`:普通柱状图。
* `Zebra`:斑马柱状图。
* `Capsule`:胶囊柱状图。
* `barPercentStack`:是否百分比堆叠柱状图,相同 `stack``serie` 只要有一个 `barPercentStack``true`,则就显示成百分比堆叠柱状图。
* `barWidth`:柱条的宽度,不设时自适应。支持设置成相对于类目宽度的百分比。
* `barGap`:不同系列的柱间距离。为百分比(如 `'0.3f'`,表示柱子宽度的 `30%`)。如果想要两个系列的柱子重叠,可以设置 `barGap``'-1f'`。这在用柱子做背景的时候有用。在同一坐标系上,此属性会被多个 `'bar'` 系列共享。此属性应设置于此坐标系中最后一个 `'bar'` 系列上才会生效,并且是对此坐标系中所有 `'bar'` 系列生效。
* `barCategoryGap`同一系列的柱间距离默认为类目间距的20%,可设固定值。在同一坐标系上,此属性会被多个 `'bar'` 系列共享。此属性应设置于此坐标系中最后一个 `'bar'` 系列上才会生效,并且是对此坐标系中所有 `'bar'` 系列生效。
* `barZebraWidth`:斑马线的粗细。`barType``Zebra` 时有效。
* `barZebraGap`:斑马线的间距。`barType``Zebra` 时有效。
* `symbol`:标记的图形 [SerieSymbol](#SerieSymbol)。
* `itemStyle`:柱条样式 [ItemStyle](#ItemStyle)。
* `areaStyle`:区域填充样式 [AreaStyle](#AreaStyle)。
* `label`:图形上的文本标签 [SerieLabel](#SerieLabel),可用于说明图形的一些数据信息,比如值,名称等。
* `emphasis`:高亮样式 [Emphasis](#Emphasis)。
* `animation`:起始动画 [SerieAnimation](#SerieAnimation)。
* `data`:系列中的数据项 [SerieData](#SerieData) 数组,可以设置`1``n`维数据。
## `Serie-Pie`
饼图系列。
* `show`:系列是否显示在图表上。
* `type``Pie`
* `name`:系列名称。用于 `tooltip` 的显示,`legend` 的图例筛选。
* `pieRoseType`:南丁格尔玫瑰图类型,支持以下类型:
* `None`:不展示成南丁格尔玫瑰图。
* `Radius`:扇区圆心角展现数据的百分比,半径展现数据的大小。
* `Area`:所有扇区圆心角相同,仅通过半径展现数据大小。
* `space`:扇区间隙。
* `center`中心点坐标。当值为0-1的浮点数时表示百分比。
* `radius`:半径。`radius[0]`为内径,`radius[1]`为外径。当内径大于0时即为圆环图。
* `arcShaped`:是否启用圆角效果。只在圆环图中有效。
* `label`:图形上的文本标签 [SerieLabel](#SerieLabel),可用于说明图形的一些数据信息,比如值,名称等。
* `emphasis`:高亮样式 [Emphasis](#Emphasis)。
* `animation`:起始动画 [SerieAnimation](#SerieAnimation)。
* `data`:系列中的数据项 [SerieData](#SerieData) 数组,可以设置`1``n`维数据。
## `Serie-Radar`
雷达图系列。
* `show`:系列是否显示在图表上。
* `type``Radar`
* `name`:系列名称。用于 `tooltip` 的显示,`legend` 的图例筛选。
* `radarIndex`:雷达图所使用的 `radar` 组件的 `index`
* `symbol`:标记的图形 [SerieSymbol](#SerieSymbol)。
* `animation`:起始动画 [SerieAnimation](#SerieAnimation)。
* `data`:系列中的数据项 [SerieData](#SerieData) 数组,可以设置`1``n`维数据。
## `Serie-Scatter`
散点图系列。
* `show`:系列是否显示在图表上。
* `type``Scatter`
* `name`:系列名称。用于 `tooltip` 的显示,`legend` 的图例筛选。
* `symbol`:标记的图形 [SerieSymbol](#SerieSymbol)。
* `label`:图形上的文本标签 [SerieLabel](#SerieLabel),可用于说明图形的一些数据信息,比如值,名称等。
* `emphasis`:高亮样式 [Emphasis](#Emphasis)。
* `animation`:起始动画 [SerieAnimation](#SerieAnimation)。
* `data`:系列中的数据项 [SerieData](#SerieData) 数组,可以设置`1``n`维数据。
## `Serie-Heatmap`
热力图系列。
* `show`:系列是否显示在图表上。
* `type``Scatter`
* `name`:系列名称。用于 `tooltip` 的显示,`legend` 的图例筛选。
* `label`:图形上的文本标签 [SerieLabel](#SerieLabel),可用于说明图形的一些数据信息,比如值,名称等。
* `emphasis`:高亮样式 [Emphasis](#Emphasis)。
* `animation`:起始动画 [SerieAnimation](#SerieAnimation)。
* `data`:系列中的数据项 [SerieData](#SerieData) 数组,可以设置`1``n`维数据。
## `Serie-Gauge`
仪表盘系列。
* `show`:系列是否显示在图表上。
* `type``Gauge`
* `name`:系列名称。用于 `tooltip` 的显示,`legend` 的图例筛选。
* `gaugeType`:仪表盘类型,支持以下类型:
* `Pointer`:指针类型。
* `ProgressBar`:进度条类型。
* `center`中心点坐标。当值为0-1的浮点数时表示百分比。
* `radius`:仪表盘半径。
* `min`最小的数据值。映射到startAngle。
* `max`最大的数据值。映射到endAngle。
* `startAngle`仪表盘起始角度。和时钟一样12点钟位置是0度顺时针到360度。
* `endAngle`仪表盘结束角度。和时钟一样12点钟位置是0度顺时针到360度。
* `splitNumber`:仪表盘刻度分割段数。
* `arcShaped`:是否启用圆角效果。
* `titleStyle`:仪表盘标题 [TitleStyle](#TitleStyle)。
* `gaugeAxis` 仪表盘坐标轴 [GaugeAxis](#GaugeAxis)。
* `gaugePointer`:仪表盘指针 [GaugePointer](#GaugePointer)。
* `itemStyle`:仪表盘指针样式 [ItemStyle](#ItemStyle)。
* `label`:图形上的文本标签 [SerieLabel](#SerieLabel),可用于说明图形的一些数据信息,比如值,名称等。
* `emphasis`:高亮样式 [Emphasis](#Emphasis)。
* `animation`:起始动画 [SerieAnimation](#SerieAnimation)。
* `data`:系列中的数据项 [SerieData](#SerieData) 数组,可以设置`1``n`维数据。仪表盘的数据一般只有一个,值通过`label`样式显示,`name`通过`titleStyle`样式显示。
## `Settings`
全局参数设置组件。一般情况下可使用默认值,当有需要时可进行调整。
* `lineSmoothStyle`:曲线平滑系数。通过调整平滑系数可以改变曲线的曲率,得到外观稍微有变化的不同曲线。
* `lineSmoothness`:曲线平滑度。值越小曲线越平滑,但顶点数也会随之增加。当开启有渐变的区域填充时,数值越大渐变过渡效果越差。
* `lineSegmentDistance` 线段的分割距离。普通折线图的线是由很多线段组成,段数由该数值决定。值越小段数越多,但顶点数也会随之增加。当开启有渐变的区域填充时,数值越大渐变过渡效果越差。
* `cicleSmoothness`:圆形(包括扇形、环形等)的平滑度。数越小圆越平滑,但顶点数也会随之增加。
## `SerieAnimation`
* `enable`:是否开起始画效果。
* `easing`:动画的缓动效果。支持以下动画效果:
* `Linear`:线性效果。
* `duration`:设定的动画时长,单位毫秒。
* `updateAnimation`:是否开启数据变更动画。
* `updateDuration`:数据变更动画时长,单位毫秒。
* `threshold`:是否开启动画的阈值,当单个系列显示的图形数量大于这个阈值时会关闭动画。
* `delay`:动画延时,单位毫秒。
## `AreaStyle`
* `show`:是否显示区域填充。
* `origin`:区域填充的起始位置 `AreaOrigin`。有以下三种填充方式:
* `Auto`:填充坐标轴轴线到数据间的区域。
* `Start`:填充坐标轴底部到数据间的区域。
* `End`:填充坐标轴顶部到数据间的区域。
* `color`:区域填充的颜色,默认取 `serie` 对应的颜色。如果 `toColor` 不是默认值,则表示渐变色的起点颜色。
* `toColor`:区域填充的渐变色的终点颜色。
* `highlightColor`:高亮时区域填充的颜色,默认取 `serie` 对应的颜色。如果 `highlightToColor` 不是默认值,则表示渐变色的起点颜色。
* `highlightToColor`:高亮时区域填充的渐变色的终点颜色。
* `opacity`:图形透明度。支持从 0 到 1 的数字,为 0 时不绘制该图形。
* `tooltipHighlight`:鼠标悬浮时是否高亮之前的区域。
## `AxisLabel`
* `show`:是否显示刻度标签。
* `interval`坐标轴刻度标签的显示间隔在类目轴中有效。0表示显示所有标签1表示隔一个隔显示一个标签以此类推。
* `inside`:刻度标签是否朝内,默认朝外。
* `rotate`:刻度标签旋转的角度,在类目轴的类目标签显示不下的时候可以通过旋转防止标签之间重叠。
* `margin`:刻度标签与轴线之间的距离。
* `color`刻度标签文字的颜色默认取主题Theme的axisTextColor。
* `fontSize`:文字的字体大小。
* `fontStyle`:文字字体的风格。
* `formatter`:图例内容字符串模版格式器。支持用 \n 换行。模板变量为图例名称 {value},支持{value:f0}{value:f1}{value:f2}。
* `forceENotation`是否强制使用科学计数法格式化显示数值。默认为false当小数精度大于3时才采用科学计数法。
## `AxisLine`
* `show`:是否显示坐标轴轴线。
* `onZero`X 轴或者 Y 轴的轴线是否在另一个轴的 0 刻度上,只有在另一个轴为数值轴且包含 0 刻度时有效。
* `width`:坐标轴线线宽。
* `symbol`:是否显示箭头。
* `symbolWidth`:箭头宽。
* `symbolHeight`:箭头高。
* `symbolOffset`:箭头偏移。
* `symbolDent`:箭头的凹陷程度。
## `AxisName`
* `show`:是否显示坐标名称。
* `name`:坐标轴名称。
* `location`:坐标轴名称的位置。支持以下类型:
* `Start`:坐标轴起始处。
* `Middle`:坐标轴中间。
* `End`:坐标轴末端。
* `offset`:坐标轴名称与轴线之间的偏移。
* `rotate`:坐标轴名字旋转,角度值。
* `color`:坐标轴名称的文字颜色。
* `fontSize`:坐标轴名称的文字大小。
* `fontStyle`:坐标轴名称的文字风格。
## `AxisSplitArea`
* `show`:是否显示坐标分割区域。
* `color`:分隔区域颜色。分隔区域会按数组中颜色的顺序依次循环设置颜色。默认是一个深浅的间隔色。
## `AxisTick`
* `show`:是否显示坐标轴刻度。
* `alignWithLabel`:类目轴中在 boundaryGap 为 true 的时候有效,可以保证刻度线和标签对齐。
* `inside`:坐标轴刻度是否朝内,默认朝外。
* `length`:坐标轴刻度的长度。
## `Emphasis`
* `show`:是否启用高亮样式。
* `label`:图形文本标签样式 [SerieLabel](#SerieLabel)。
* `itemStyle`:图形样式 [ItemStyle](#ItemStyle)。
## `ItemStyle`
* `show`:是否启用。
* `color`:颜色。
* `borderType`:边框的类型。
* `borderColor`:边框的颜色。
* `borderWidth`:边框宽。
* `borderWidth`opacity。
## `LineArrow`
* `show`:是否显示箭头。
* `position`:箭头显示位置。支持以下两种位置:
* `End`:末端显示。最后一个数据上显示箭头。
* `Start`:起始端显示。第一个数据上显示箭头。
* `width`:箭头宽。
* `height`:箭头长。
* `offset`:箭头偏移。默认箭头的中心点和数据坐标点一致,可通过 `offset` 调整偏移。
* `dent`:箭头的凹度。
## `LineStyle`
* `show`:是否显示线条。在折线图中无效。
* `type`:线条类型。支持以下五种类型:
* `None`:不显示分割线。
* `Solid`:实线。
* `Dashed`:虚线。
* `Dotted`:点线。
* `DashDot`:点划线。
* `DashDotDot`:双点划线。
* `color`:线条颜色。默认和 `serie` 一致。
* `width`:线条宽。
* `opacity`:线条的透明度。支持从 0 到 1 的数字,为 0 时不绘制该图形。
## `Location`
* `align`:对齐方式。有以下对齐方式。
* `TopLeft`:左上角对齐。
* `TopRight`:右上角对齐。
* `TopCenter`:置顶居中对齐。
* `BottomLeft`:左下对齐。
* `BottomRight`:右下对齐。
* `BottomCenter`:底部居中对齐。
* `Center`:居中对齐。
* `CenterLeft`:中部靠左对齐。
* `CenterRight`:中部靠右对齐。
* `left`:离容器左侧的距离。
* `right`:离容器右侧的距离。
* `top`:离容器上侧的距离。
* `bottom`:离容器下侧的距离。
## `SerieData`
* `name`:数据项名称。
* `selected`:该数据项是否被选中。
* `radius`:自定义半径。可用在饼图中自定义某个数据项的半径。
* `showIcon`:是否显示图标。
* `iconImage`:图标的图片。
* `iconColor`:图标颜色。
* `iconWidth`:图标宽。
* `iconHeight`:图标高。
* `iconOffset`:图标偏移。
## `SerieLabel`
* `show`:是否显示文本标签。
* `position`:标签的位置。折线图时强制默认为 `Center`,支持以下 `5` 种位置:
* `Outside`:饼图扇区外侧,通过视觉引导线连到相应的扇区。只在饼图种可用。
* `Inside`:饼图扇区内部。只在饼图可用。
* `Center`:在中心位置(折线图,柱状图,饼图)。
* `Top`:顶部(柱状图)。
* `Bottom`:底部(柱状图)。
* `formatter`:标签内容字符串模版格式器。支持用 `\n` 换行。模板变量有:`{a}`:系列名;`{b}`:数据名;`{c}`:数据值;`{d}`:百分比。示例:`{b}:{c:f1}`
* `offset`:距离图形元素的偏移。
* `color`:自定义文字颜色,默认和系列的颜色一致。
* `backgroundColor`:标签的背景色,默认无颜色。
* `backgroundWidth`:标签的背景宽度。一般不用指定,不指定时则自动是文字的宽度。
* `backgroundHeight`:标签的背景高度。一般不用指定,不指定时则自动是文字的高度。
* `rotate`:标签的旋转。
* `paddingLeftRight`:标签文字和边框的左右边距。
* `paddingTopBottom`:标签文字和边框的上下边距。
* `fontSize`:标签文字的字体大小。
* `fontStyle`:标签文字的字体风格。
* `line`:是否显示视觉引导线。在 `label` 位置 设置为 `'Outside'` 的时候会显示视觉引导线。
* `lineType`:视觉引导线类型。支持以下几种类型:
* `BrokenLine`:折线。
* `Curves`:曲线。
* `HorizontalLine`:水平线。
* `lineColor`:视觉引导线自定义颜色。
* `lineWidth`:视觉引导线的宽度。
* `lineLength1`:视觉引导线第一段的长度。
* `lineLength2`:视觉引导线第二段的长度。
* `border`:是否显示边框。
* `borderWidth`:边框宽度。
* `borderColor`:边框颜色。
* `forceENotation`是否强制使用科学计数法格式化显示数值。默认为false当小数精度大于3时才采用科学计数法。
## `SerieSymbol`
* `type`:标记类型。支持以下六种类型:
* `EmptyCircle`:空心圆。
* `Circle`:实心圆。
* `Rect`:正方形。
* `Triangle`:三角形。
* `Diamond`:菱形。
* `None`:不显示标记。
* `sizeType`:标记图形的大小获取方式。支持以下三种类型:
* `Custom`:自定义大小。
* `FromData`:通过 `dataIndex` 从数据中获取,再乘以一个比例系数 `dataScale`
* `Callback`:通过回调函数 `sizeCallback` 获取。
* `size`:标记的大小。
* `selectedSize`:被选中的标记的大小。
* `dataIndex`:当 `sizeType` 指定为 `FromData` 时,指定的数据源索引。
* `dataScale`:当 `sizeType` 指定为 `FromData` 时,指定的倍数系数。
* `selectedDataScale`:当 `sizeType` 指定为 `FromData` 时,指定的高亮倍数系数。
* `sizeCallback`:当 `sizeType` 指定为 `Callback` 时,指定的回调函数。
* `selectedSizeCallback`:当 `sizeType` 指定为 `Callback` 时,指定的高亮回调函数。
* `color`:标记图形的颜色,默认和系列一致。
* `opacity`:图形标记的透明度。
* `startIndex`:开始显示图形标记的索引。
* `interval`显示图形标记的间隔。0表示显示所有标签1表示隔一个隔显示一个标签以此类推。
* `forceShowLast`:是否强制显示最后一个图形标记。默认为 `false`
[返回首页](https://github.com/monitor1394/unity-ugui-XCharts)
[XChartsAPI接口](XChartsAPI.md)
[XCharts问答](XCharts问答.md)

View File

@@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: f74b65f3be5d64689a5db6bdbc91df3e
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,130 +0,0 @@
# XCharts问答
[返回首页](https://github.com/monitor1394/unity-ugui-XCharts)
[XChartsAPI接口](XChartsAPI.md)
[XCharts配置项手册](XCharts配置项手册.md)
[QA 1如何调整坐标轴与背景的边距](#如何调整坐标轴与背景的边距)
[QA 2如何让初始动画重新播放](#如何让初始动画重新播放)
[QA 3如何自定义折线图、饼图等数据项的颜色](#如何自定义折线图、饼图等数据项的颜色)
[QA 4如何格式化文字如我想给坐标轴标签加上单位](#如何格式化文字,如我想给坐标轴标签加上单位)
[QA 5如何让柱形图的柱子堆叠显示](#如何让柱形图的柱子堆叠显示)
[QA 6如何让柱形图的柱子同柱但不重叠](#如何让柱形图的柱子同柱但不重叠)
[QA 7如何调整柱形图的柱子宽度和间距](#如何调整柱形图的柱子宽度和间距)
[QA 8如何调整柱形图单个柱子的颜色](#如何调整柱形图单个柱子的颜色)
[QA 9如何调整图表的对齐方式](#如何调整图表的对齐方式)
[QA 10可以显示超过1000以上的大数据吗](#可以显示超过1000以上的大数据吗)
[QA 11折线图可以画虚线、点线、点划线吗](#折线图可以画虚线、点线、点划线吗)
[QA 12如何限定Y轴Value轴的值范围](#如何限定Y轴Value轴的值范围)
[QA 13如何自定义数值轴刻度大小](#如何自定义数值轴刻度大小)
[QA 14如何在数据项顶上显示文本](#如何在数据项顶上显示文本)
[QA 15如何给数据项自定义图标](#如何给数据项自定义图标)
[QA 16锯齿太严重如何让图表更顺滑](#锯齿太严重,如何让图表更顺滑)
[QA 17为什么鼠标移上图表Tooltip不显示](#为什么鼠标移上图表`Tooltip`不显示)
[QA 18如何取消Tooltip的竖线](#如何取消`Tooltip`的竖线)
[QA 19如何让Y轴数值轴显示多位小数](#如何让Y轴数值轴显示多位小数)
[QA 20如何用代码动态更新数据](#如何用代码动态更新数据)
[QA 21如何显示图例](#如何显示图例)
[QA 22如何做成预设](#如何做成预设)
[QA 23如何在图表上画点画线等自定义内容](#如何在图表上画点画线等自定义内容)
[QA 24如何实现心电图类似的数据移动效果](#如何实现心电图类似的数据移动效果)
## 如何调整坐标轴与背景的边距
答:`Grid`组件,可调整上下左右边距。
## 如何让初始动画重新播放
答:调用`AnimationReset()`接口。
## 如何自定义折线图、饼图等数据项的颜色
答:通过`Theme``colorPalette`调整,或者部分`Serie`下的`LineStyle``ItemStyle`
## 如何格式化文字,如我想给坐标轴标签加上单位
答:通过`formatter`参数,在`Legend``Axis``AxisLabel``Tooltop``Serie``Label`都提供改参数的配置。
## 如何让柱形图的柱子堆叠显示
答:设置`Serie`下的`stack``stack`相同的`serie`会堆叠显示在一个柱子上。
## 如何让柱形图的柱子同柱但不重叠
答:设置`Serie`下的`barGap``-1``stack`为空。
## 如何调整柱形图的柱子宽度和间距
答:调整`Serie`下的`barWidth``barGap`,多个`serie`时最后一个`serie``barWidth``barGap`有效。
## 如何调整柱形图单个柱子的颜色
答:目前暂不支持调整单子柱子的颜色,但可以通过两个`serie`同柱不堆叠来实现,通过设置数据项为`0`来达到类似效果。
## 如何调整图表的对齐方式
默认为左下角对齐暂不支持调整。可以通过包一层parent来辅助控制。
## 可以显示超过1000以上的大数据吗
答:可以。但`UGUI`对单个`Graphic`限制`65000`个顶点,所以太多的数据不一定能显示完全。可通过设置采样距离`sampleDist`开启采样简化过密曲线。也可以通过设置一些参数来减少图表的顶点数有助于显示更多数据。如缩小图表的尺寸,关闭或减少坐标轴的客户端绘制,关闭`Serie``symbol``label`显示等。折线图的普通线图`Normal`比平滑线图`Smooth`占用顶点数更少。
## 折线图可以画虚线、点线、点划线吗
答:可以。通过`Serie`下的`lineType`选择线条样式。当要显示的数据过多(成千以上)数据间过密时建议使用`Normal`或者`Step`样式。
## 如何限定Y轴Value轴的值范围
答:设置`Axis`下的`minMaxType``Custom`,自定义`min``max`
## 如何自定义数值轴刻度大小
答:默认时通过`Axis`下的`splitNumer`进行自动划分。也可以设置`interval`自定义刻度大小。
## 如何在数据项顶上显示文本
答:通过设置`Serie`下的`Label`
## 如何给数据项自定义图标
答:通过设置`Serie``data`下的数据项可单独设置`icon`相关参数。
## 锯齿太严重,如何让图表更顺滑
开启抗锯齿设置。调整UI渲染模式为Camera模式开启MSAA设置4倍或更高抗锯齿。锯齿只能减少难以避免像素越高锯齿越不明显。
## 为什么鼠标移上图表`Tooltip`不显示
答:确认`Tooltip`是否开启。确认父节点是否关闭了鼠标事件。
## 如何取消`Tooltip`的竖线
答:设置`Tooltip``type``None`
## 如何让Y轴数值轴显示多位小数
答:设置`Axis`下的`AxisLabel`中的`formatter``{value:f1}``{value:f2}`
## 如何用代码动态更新数据
答:请查阅`Demo`下的代码,`Demo10_LineSimple.cs`就是一个简单添加数据构建折线图的例子,其他`Demo`也都是通过代码控制不同的组件实现不同的功能。
## 如何显示图例
答:首先,你的`serie`里的`name`需有值不为空。然后开启`Legend`显示,里面的`data`可以默认为空,表示显示所有的图例。如果你只想显示部分`serie`的图例,在`data`中填入要显示的图例即可。
## 如何做成预设
请删除chart下所有的子组件再拖成预设。
## 如何在图表上画点画线等自定义内容
xcharts有自定义绘制回调`customDrawCallback`,具体可参考`Demo12_CustomDrawing.cs`
## 如何实现心电图类似的数据移动效果
axis和serie都设置相同的maxCache。maxCache可固定数据个数当数据超过设定时会先删除第一个在添加新数据实现数据移动效果。
[返回首页](https://github.com/monitor1394/unity-ugui-XCharts)
[XChartsAPI接口](XChartsAPI.md)
[XCharts配置项手册](XCharts配置项手册.md)

View File

@@ -1,34 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
namespace XCharts
{
/// <summary>
/// Editor class used to edit UI BarChart.
/// </summary>
[CustomEditor(typeof(BarChart), false)]
public class BarChartEditor : CoordinateChartEditor
{
protected override void OnEnable()
{
base.OnEnable();
m_Target = (BarChart)target;
}
protected override void OnEndInspectorGUI()
{
base.OnEndInspectorGUI();
if (m_Target == null && target == null)
{
return;
}
}
}
}

View File

@@ -1,13 +0,0 @@
fileFormatVersion: 2
guid: 5acea6fd06c0e9c498c434f941e4cba9
timeCreated: 1554219116
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,92 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
namespace XCharts
{
/// <summary>
/// Editor class used to edit UI BaseChart.
/// </summary>
[CustomEditor(typeof(BaseChart), false)]
public class BaseChartEditor : Editor
{
protected BaseChart m_Target;
protected SerializedProperty m_Script;
protected SerializedProperty m_ChartWidth;
protected SerializedProperty m_ChartHeight;
protected SerializedProperty m_Theme;
protected SerializedProperty m_ThemeInfo;
protected SerializedProperty m_Title;
protected SerializedProperty m_Legend;
protected SerializedProperty m_Tooltip;
protected SerializedProperty m_Series;
protected SerializedProperty m_Settings;
protected SerializedProperty m_Large;
protected float m_DefaultLabelWidth;
protected float m_DefaultFieldWidth;
private int m_SeriesSize;
protected virtual void OnEnable()
{
m_Target = (BaseChart)target;
m_Script = serializedObject.FindProperty("m_Script");
m_ChartWidth = serializedObject.FindProperty("m_ChartWidth");
m_ChartHeight = serializedObject.FindProperty("m_ChartHeight");
m_Theme = serializedObject.FindProperty("m_Theme");
m_ThemeInfo = serializedObject.FindProperty("m_ThemeInfo");
m_Title = serializedObject.FindProperty("m_Title");
m_Legend = serializedObject.FindProperty("m_Legend");
m_Tooltip = serializedObject.FindProperty("m_Tooltip");
m_Series = serializedObject.FindProperty("m_Series");
m_Large = serializedObject.FindProperty("m_Large");
m_Settings = serializedObject.FindProperty("m_Settings");
}
public override void OnInspectorGUI()
{
if (m_Target == null && target == null)
{
base.OnInspectorGUI();
return;
}
serializedObject.Update();
m_DefaultLabelWidth = EditorGUIUtility.labelWidth;
m_DefaultFieldWidth = EditorGUIUtility.fieldWidth;
OnStartInspectorGUI();
OnMiddleInspectorGUI();
OnEndInspectorGUI();
serializedObject.ApplyModifiedProperties();
}
protected virtual void OnStartInspectorGUI()
{
EditorGUILayout.PropertyField(m_Script);
EditorGUILayout.PropertyField(m_ChartWidth);
EditorGUILayout.PropertyField(m_ChartHeight);
EditorGUILayout.PropertyField(m_ThemeInfo, true);
EditorGUILayout.PropertyField(m_Title, true);
EditorGUILayout.PropertyField(m_Legend, true);
EditorGUILayout.PropertyField(m_Tooltip, true);
}
protected virtual void OnMiddleInspectorGUI()
{
EditorGUILayout.PropertyField(m_Series, true);
EditorGUILayout.PropertyField(m_Settings, true);
}
protected virtual void OnEndInspectorGUI()
{
}
}
}

View File

@@ -1,79 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
using UnityEngine;
namespace XCharts
{
public class CheckVersionEditor : EditorWindow
{
private Vector2 scrollPos;
private static CheckVersionEditor window;
[MenuItem("Component/XCharts/Check For Update")]
private static void ShowWindow()
{
window = GetWindow<CheckVersionEditor>();
window.titleContent = new GUIContent("XCharts Check For Update");
window.minSize = new Vector2(550, window.minSize.y);
window.Show();
XChartsMgr.Instance.CheckVersion();
}
private void OnGUI()
{
var mgr = XChartsMgr.Instance;
GUILayout.Label("");
GUILayout.Label("当前版本:" + mgr.nowVersion);
if (mgr.needUpdate && !mgr.isCheck)
{
GUILayout.BeginHorizontal();
GUILayout.Label("最新版本:" + mgr.newVersion);
if (mgr.isCheck) GUILayout.Label("检测中...");
else GUILayout.Label("有更新!");
if (GUILayout.Button("去Github主页"))
{
Application.OpenURL("https://github.com/monitor1394/unity-ugui-XCharts");
}
GUILayout.EndHorizontal();
GUILayout.Label("");
if (!string.IsNullOrEmpty(mgr.desc))
{
GUILayout.Label(mgr.desc);
GUILayout.Label("");
}
scrollPos = GUILayout.BeginScrollView(scrollPos);
GUILayout.TextArea(mgr.changeLog);
GUILayout.EndScrollView();
}
else
{
if (mgr.isCheck) GUILayout.Label("最新版本:检测中...");
else GUILayout.Label("最新版本:" + mgr.newVersion);
if (!mgr.needUpdate && !mgr.isCheck)
{
GUILayout.Label("");
GUILayout.Label("已是最新版本!");
GUILayout.Label("");
if (!string.IsNullOrEmpty(mgr.desc))
{
GUILayout.Label(mgr.desc);
GUILayout.Label("");
}
if (GUILayout.Button("去Github主页"))
{
Application.OpenURL(mgr.homepage);
}
}
}
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 98d1061c4167c4fff8ed25c3e8be8756
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,56 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
namespace XCharts
{
/// <summary>
/// Editor class used to edit UI CoordinateChart.
/// </summary>
[CustomEditor(typeof(CoordinateChart), false)]
public class CoordinateChartEditor : BaseChartEditor
{
protected SerializedProperty m_Grid;
protected SerializedProperty m_MultipleXAxis;
protected SerializedProperty m_XAxises;
protected SerializedProperty m_MultipleYAxis;
protected SerializedProperty m_YAxises;
protected SerializedProperty m_DataZoom;
protected SerializedProperty m_VisualMap;
protected override void OnEnable()
{
base.OnEnable();
m_Target = (CoordinateChart)target;
m_Grid = serializedObject.FindProperty("m_Grid");
m_XAxises = serializedObject.FindProperty("m_XAxises");
m_YAxises = serializedObject.FindProperty("m_YAxises");
m_DataZoom = serializedObject.FindProperty("m_DataZoom");
m_VisualMap = serializedObject.FindProperty("m_VisualMap");
}
protected override void OnStartInspectorGUI()
{
base.OnStartInspectorGUI();
EditorGUILayout.PropertyField(m_DataZoom);
EditorGUILayout.PropertyField(m_VisualMap);
EditorGUILayout.PropertyField(m_Grid);
for (int i = 0; i < m_XAxises.arraySize; i++)
{
SerializedProperty axis = m_XAxises.GetArrayElementAtIndex(i);
EditorGUILayout.PropertyField(axis);
}
for (int i = 0; i < m_YAxises.arraySize; i++)
{
SerializedProperty axis = m_YAxises.GetArrayElementAtIndex(i);
EditorGUILayout.PropertyField(axis);
}
}
}
}

View File

@@ -1,13 +0,0 @@
fileFormatVersion: 2
guid: 1dd7acd8b13f3f14e9891af4e8dd0b0b
timeCreated: 1554475249
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,33 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
namespace XCharts
{
/// <summary>
/// Editor class used to edit UI GaugeChart.
/// </summary>
[CustomEditor(typeof(GaugeChart), false)]
public class GaugeChartEditor : BaseChartEditor
{
protected SerializedProperty m_Radar;
protected SerializedProperty m_Radars;
protected override void OnEnable()
{
base.OnEnable();
m_Target = (GaugeChart)target;
}
protected override void OnEndInspectorGUI()
{
base.OnEndInspectorGUI();
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: bd96c5068df484d1c95748a85d8380a8
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,30 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
namespace XCharts
{
/// <summary>
/// Editor class used to edit UI HeatmapChart.
/// </summary>
[CustomEditor(typeof(HeatmapChart), false)]
public class HeatmapChartEditor : CoordinateChartEditor
{
protected override void OnEnable()
{
base.OnEnable();
m_Target = (HeatmapChart)target;
}
protected override void OnEndInspectorGUI()
{
base.OnEndInspectorGUI();
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 1144057dfc00f4572913a63ba5291dd7
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,25 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
namespace XCharts
{
/// <summary>
/// Editor class used to edit UI LineChart.
/// </summary>
[CustomEditor(typeof(LineChart), false)]
public class LineChartEditor : CoordinateChartEditor
{
protected override void OnEnable()
{
base.OnEnable();
m_Target = (LineChart)target;
}
}
}

View File

@@ -1,13 +0,0 @@
fileFormatVersion: 2
guid: 6bd1a238bc5b407408b8f902aa3db9fd
timeCreated: 1554539035
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,32 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
namespace XCharts
{
/// <summary>
/// Editor class used to edit UI PieChart.
/// </summary>
[CustomEditor(typeof(PieChart), false)]
public class PieChartEditor : BaseChartEditor
{
protected SerializedProperty m_Pie;
protected override void OnEnable()
{
base.OnEnable();
m_Target = (PieChart)target;
}
protected override void OnEndInspectorGUI()
{
base.OnEndInspectorGUI();
}
}
}

View File

@@ -1,13 +0,0 @@
fileFormatVersion: 2
guid: 28de30021bed0f945af09633584fcb44
timeCreated: 1554768152
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,10 +0,0 @@
fileFormatVersion: 2
guid: 0ad1e8940e4805b49a18ea7a2cbd4bce
folderAsset: yes
timeCreated: 1554304641
licenseType: Free
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,75 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(SerieAnimation), true)]
public class AnimationDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_AnimationModuleToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty m_Enable = prop.FindPropertyRelative("m_Enable");
SerializedProperty m_Easting = prop.FindPropertyRelative("m_Easting");
SerializedProperty m_Duration = prop.FindPropertyRelative("m_Duration");
SerializedProperty m_UpdateAnimation = prop.FindPropertyRelative("m_UpdateAnimation");
SerializedProperty m_UpdateDuration = prop.FindPropertyRelative("m_UpdateDuration");
SerializedProperty m_Delay = prop.FindPropertyRelative("m_Delay");
SerializedProperty m_Threshold = prop.FindPropertyRelative("m_Threshold");
SerializedProperty m_ActualDuration = prop.FindPropertyRelative("m_ActualDuration");
// SerializedProperty m_CurrDetailProgress = prop.FindPropertyRelative("m_CurrDetailProgress");
// SerializedProperty m_DestDetailProgress = prop.FindPropertyRelative("m_DestDetailProgress");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_AnimationModuleToggle, prop, null, m_Enable, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_AnimationModuleToggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Easting);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Threshold);
if (m_Threshold.intValue < 0) m_Threshold.intValue = 0;
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Delay);
if (m_Delay.floatValue < 0) m_Delay.floatValue = 0;
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Duration);
if (m_Duration.floatValue < 0) m_Duration.floatValue = 0;
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_UpdateAnimation);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_UpdateDuration);
if (m_UpdateDuration.floatValue < 0) m_UpdateDuration.floatValue = 0;
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
// EditorGUI.LabelField(drawRect, "CurrDetailProgress:" + m_CurrDetailProgress.floatValue);
// drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
// EditorGUI.LabelField(drawRect, "DestDetailProgress:" + m_DestDetailProgress.floatValue);
// drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.LabelField(drawRect, "Actual duration:" + m_ActualDuration.floatValue + " ms");
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
if (ChartEditorHelper.IsToggle(m_AnimationModuleToggle, prop))
return 8 * EditorGUIUtility.singleLineHeight + 7 * EditorGUIUtility.standardVerticalSpacing;
else
return 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
}
}
}

View File

@@ -1,69 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(AreaStyle), true)]
public class AreaStyleDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_AreaStyleToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Origin = prop.FindPropertyRelative("m_Origin");
SerializedProperty m_Color = prop.FindPropertyRelative("m_Color");
SerializedProperty m_ToColor = prop.FindPropertyRelative("m_ToColor");
SerializedProperty m_HighlightColor = prop.FindPropertyRelative("m_HighlightColor");
SerializedProperty m_HighlightToColor = prop.FindPropertyRelative("m_HighlightToColor");
SerializedProperty m_Opacity = prop.FindPropertyRelative("m_Opacity");
SerializedProperty m_TooltipHighlight = prop.FindPropertyRelative("m_TooltipHighlight");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_AreaStyleToggle, prop, "Area Style", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_AreaStyleToggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Origin);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Color);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_ToColor);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_HighlightColor);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_HighlightToColor);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Opacity);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_TooltipHighlight);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
if (ChartEditorHelper.IsToggle(m_AreaStyleToggle, prop))
{
height += 8 * EditorGUIUtility.singleLineHeight + 7 * EditorGUIUtility.standardVerticalSpacing;
}
else
{
height += 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
}
return height;
}
}
}

View File

@@ -1,226 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(Axis), true)]
public class AxisDrawer : PropertyDrawer
{
private List<bool> m_AxisModuleToggle = new List<bool>();
private List<bool> m_DataFoldout = new List<bool>();
private int m_DataSize = 0;
private bool m_ShowJsonDataArea = false;
private string m_JsonDataAreaText;
protected virtual string GetDisplayName(string displayName)
{
return displayName;
}
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty m_Show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Type = prop.FindPropertyRelative("m_Type");
SerializedProperty m_LogBaseE = prop.FindPropertyRelative("m_LogBaseE");
SerializedProperty m_LogBase = prop.FindPropertyRelative("m_LogBase");
SerializedProperty m_SplitNumber = prop.FindPropertyRelative("m_SplitNumber");
SerializedProperty m_Interval = prop.FindPropertyRelative("m_Interval");
SerializedProperty m_AxisLabel = prop.FindPropertyRelative("m_AxisLabel");
SerializedProperty m_ShowSplitLine = prop.FindPropertyRelative("m_ShowSplitLine");
SerializedProperty m_SplitLineType = prop.FindPropertyRelative("m_SplitLineType");
SerializedProperty m_BoundaryGap = prop.FindPropertyRelative("m_BoundaryGap");
SerializedProperty m_Data = prop.FindPropertyRelative("m_Data");
SerializedProperty m_AxisLine = prop.FindPropertyRelative("m_AxisLine");
SerializedProperty m_AxisName = prop.FindPropertyRelative("m_AxisName");
SerializedProperty m_AxisTick = prop.FindPropertyRelative("m_AxisTick");
SerializedProperty m_SplitArea = prop.FindPropertyRelative("m_SplitArea");
SerializedProperty m_MinMaxType = prop.FindPropertyRelative("m_MinMaxType");
SerializedProperty m_Min = prop.FindPropertyRelative("m_Min");
SerializedProperty m_Max = prop.FindPropertyRelative("m_Max");
int index = InitToggle(prop);
bool toggle = m_AxisModuleToggle[index];
m_AxisModuleToggle[index] = ChartEditorHelper.MakeFoldout(ref drawRect, ref toggle,
GetDisplayName(prop.displayName), m_Show);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_AxisModuleToggle[index])
{
Axis.AxisType type = (Axis.AxisType)m_Type.enumValueIndex;
EditorGUI.indentLevel++;
EditorGUI.PropertyField(drawRect, m_Type);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (type == Axis.AxisType.Log)
{
EditorGUI.PropertyField(drawRect, m_LogBaseE);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_LogBase);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
}
if (type == Axis.AxisType.Value)
{
EditorGUI.PropertyField(drawRect, m_MinMaxType);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
Axis.AxisMinMaxType minMaxType = (Axis.AxisMinMaxType)m_MinMaxType.enumValueIndex;
switch (minMaxType)
{
case Axis.AxisMinMaxType.Default:
break;
case Axis.AxisMinMaxType.MinMax:
break;
case Axis.AxisMinMaxType.Custom:
EditorGUI.indentLevel++;
EditorGUI.PropertyField(drawRect, m_Min);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Max);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.indentLevel--;
break;
}
}
EditorGUI.PropertyField(drawRect, m_SplitNumber);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Interval);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_ShowSplitLine.boolValue)
{
drawRect.width = EditorGUIUtility.labelWidth + 10;
EditorGUI.PropertyField(drawRect, m_ShowSplitLine);
//drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
drawRect.x = EditorGUIUtility.labelWidth + 35;
drawRect.width = EditorGUIUtility.currentViewWidth - EditorGUIUtility.labelWidth - 55;
EditorGUI.PropertyField(drawRect, m_SplitLineType, GUIContent.none);
drawRect.x = pos.x;
drawRect.width = pos.width;
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
}
else
{
EditorGUI.PropertyField(drawRect, m_ShowSplitLine);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
}
EditorGUI.PropertyField(drawRect, m_BoundaryGap);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_AxisLine);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
drawRect.y += EditorGUI.GetPropertyHeight(m_AxisLine);
EditorGUI.PropertyField(drawRect, m_AxisName);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
drawRect.y += EditorGUI.GetPropertyHeight(m_AxisName);
EditorGUI.PropertyField(drawRect, m_AxisTick);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
drawRect.y += EditorGUI.GetPropertyHeight(m_AxisTick);
EditorGUI.PropertyField(drawRect, m_AxisLabel);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
drawRect.y += EditorGUI.GetPropertyHeight(m_AxisLabel);
EditorGUI.PropertyField(drawRect, m_SplitArea);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
drawRect.y += EditorGUI.GetPropertyHeight(m_SplitArea);
if (type == Axis.AxisType.Category)
{
drawRect.width = EditorGUIUtility.labelWidth + 10;
m_DataFoldout[index] = EditorGUI.Foldout(drawRect, m_DataFoldout[index], "Data");
ChartEditorHelper.MakeJsonData(ref drawRect, ref m_ShowJsonDataArea, ref m_JsonDataAreaText, prop, pos.width);
drawRect.width = pos.width;
if (m_DataFoldout[index])
{
ChartEditorHelper.MakeList(ref drawRect, ref m_DataSize, m_Data);
}
}
EditorGUI.indentLevel--;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
int index = InitToggle(prop);
if (!m_AxisModuleToggle[index])
{
return EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
}
else
{
SerializedProperty m_Type = prop.FindPropertyRelative("m_Type");
SerializedProperty m_AxisTick = prop.FindPropertyRelative("m_AxisTick");
SerializedProperty m_AxisLine = prop.FindPropertyRelative("m_AxisLine");
SerializedProperty m_AxisName = prop.FindPropertyRelative("m_AxisName");
SerializedProperty m_AxisLabel = prop.FindPropertyRelative("m_AxisLabel");
SerializedProperty m_SplitArea = prop.FindPropertyRelative("m_SplitArea");
float height = 0;
height += 11 * EditorGUIUtility.singleLineHeight + 10 * EditorGUIUtility.standardVerticalSpacing;
Axis.AxisType type = (Axis.AxisType)m_Type.enumValueIndex;
if (type == Axis.AxisType.Category)
{
if (m_DataFoldout[index])
{
SerializedProperty m_Data = prop.FindPropertyRelative("m_Data");
int num = m_Data.arraySize + 2;
if (num > 30) num = 14;
height += num * EditorGUIUtility.singleLineHeight + (num - 1) * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUIUtility.standardVerticalSpacing;
}
else
{
height += 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
}
if (m_ShowJsonDataArea)
{
height += EditorGUIUtility.singleLineHeight * 3 + EditorGUIUtility.standardVerticalSpacing;
}
}
else if (type == Axis.AxisType.Value)
{
height += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
SerializedProperty m_MinMaxType = prop.FindPropertyRelative("m_MinMaxType");
if (m_MinMaxType.enumValueIndex == (int)Axis.AxisMinMaxType.Custom)
{
height += EditorGUIUtility.singleLineHeight * 2 + EditorGUIUtility.standardVerticalSpacing;
}
}
else if (type == Axis.AxisType.Log)
{
height += 2 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
SerializedProperty m_MinMaxType = prop.FindPropertyRelative("m_MinMaxType");
if (m_MinMaxType.enumValueIndex == (int)Axis.AxisMinMaxType.Custom)
{
height += EditorGUIUtility.singleLineHeight * 2 + EditorGUIUtility.standardVerticalSpacing;
}
}
height += EditorGUI.GetPropertyHeight(m_AxisName);
height += EditorGUI.GetPropertyHeight(m_AxisLine);
height += EditorGUI.GetPropertyHeight(m_AxisTick);
height += EditorGUI.GetPropertyHeight(m_AxisLabel);
height += EditorGUI.GetPropertyHeight(m_SplitArea);
return height;
}
}
private int InitToggle(SerializedProperty prop)
{
int index = 0;
int.TryParse(prop.displayName.Split(' ')[1], out index);
if (index >= m_DataFoldout.Count)
{
m_DataFoldout.Add(false);
}
if (index >= m_AxisModuleToggle.Count)
{
m_AxisModuleToggle.Add(false);
}
return index;
}
}
}

View File

@@ -1,13 +0,0 @@
fileFormatVersion: 2
guid: d0544f1db7f17644bb3cbe7c85da84d5
timeCreated: 1554507809
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,71 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(AxisLabel), true)]
public class AxisLabelDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_AxisLabelToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Formatter = prop.FindPropertyRelative("m_Formatter");
SerializedProperty m_Inside = prop.FindPropertyRelative("m_Inside");
SerializedProperty m_Interval = prop.FindPropertyRelative("m_Interval");
SerializedProperty m_Rotate = prop.FindPropertyRelative("m_Rotate");
SerializedProperty m_Margin = prop.FindPropertyRelative("m_Margin");
SerializedProperty m_Color = prop.FindPropertyRelative("m_Color");
SerializedProperty m_FontSize = prop.FindPropertyRelative("m_FontSize");
SerializedProperty m_FontStyle = prop.FindPropertyRelative("m_FontStyle");
SerializedProperty m_ForceENotation = prop.FindPropertyRelative("m_ForceENotation");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_AxisLabelToggle, prop, "Axis Label", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_AxisLabelToggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Inside);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Interval);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Rotate);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Margin);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Color);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_FontSize);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_FontStyle);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Formatter);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_ForceENotation);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
if (ChartEditorHelper.IsToggle(m_AxisLabelToggle, prop))
{
height += 9 * EditorGUIUtility.singleLineHeight + 10 * EditorGUIUtility.standardVerticalSpacing;
}
return height;
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 88f38952bcbcd448dbe12f98e9c9110d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,65 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(AxisLine), true)]
public class AxisLineDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_AxisLineToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_OnZero = prop.FindPropertyRelative("m_OnZero");
SerializedProperty m_Width = prop.FindPropertyRelative("m_Width");
SerializedProperty m_Symbol = prop.FindPropertyRelative("m_Symbol");
SerializedProperty m_SymbolWidth = prop.FindPropertyRelative("m_SymbolWidth");
SerializedProperty m_SymbolHeight = prop.FindPropertyRelative("m_SymbolHeight");
SerializedProperty m_SymbolOffset = prop.FindPropertyRelative("m_SymbolOffset");
SerializedProperty m_SymbolDent = prop.FindPropertyRelative("m_SymbolDent");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_AxisLineToggle, prop, "Axis Line", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_AxisLineToggle,prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_OnZero);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Width);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Symbol);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_SymbolWidth);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_SymbolHeight);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_SymbolOffset);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_SymbolDent);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
if (ChartEditorHelper.IsToggle(m_AxisLineToggle,prop))
{
height += 7 * EditorGUIUtility.singleLineHeight + 6 * EditorGUIUtility.standardVerticalSpacing;
}
return height;
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 866eefe266c3c47809d9dff3e89be0ab
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,74 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(AxisName), true)]
public class AxisNameDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_AxisNameToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Name = prop.FindPropertyRelative("m_Name");
SerializedProperty m_Location = prop.FindPropertyRelative("m_Location");
SerializedProperty m_Offset = prop.FindPropertyRelative("m_Offset");
SerializedProperty m_Rotate = prop.FindPropertyRelative("m_Rotate");
SerializedProperty m_Color = prop.FindPropertyRelative("m_Color");
SerializedProperty m_FontSize = prop.FindPropertyRelative("m_FontSize");
SerializedProperty m_FontStyle = prop.FindPropertyRelative("m_FontStyle");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_AxisNameToggle, prop, "Axis Name", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_AxisNameToggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Name);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Location);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Offset);
drawRect.y += EditorGUI.GetPropertyHeight(m_Offset);
// EditorGUI.LabelField(drawRect, "Offset");
// var startX = drawRect.x + EditorGUIUtility.labelWidth - EditorGUI.indentLevel * 15;
// var tempWidth = (pos.width - startX + 35) / 2;
// var xRect = new Rect(startX, drawRect.y, tempWidth, drawRect.height);
// var yRect = new Rect(xRect.x + tempWidth - 20, drawRect.y, tempWidth, drawRect.height);
// var x = EditorGUI.FloatField(xRect, m_Offset.vector2Value.x);
// var y = EditorGUI.FloatField(yRect, m_Offset.vector2Value.y);
// m_Offset.vector2Value = new Vector2(x,y);
// drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Rotate);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Color);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_FontSize);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_FontStyle);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
if (ChartEditorHelper.IsToggle(m_AxisNameToggle, prop))
{
height += 7 * EditorGUIUtility.singleLineHeight + 6 * EditorGUIUtility.standardVerticalSpacing;
}
return height;
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 93f4873273d9c4d76bd651c8d774637f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,61 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(AxisSplitArea), true)]
public class AxisSplitAreaDrawer : PropertyDrawer
{
private bool m_ColorFoldout = false;
private int m_ColorSize = 0;
private Dictionary<string, bool> m_SplitAreaToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Color = prop.FindPropertyRelative("m_Color");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_SplitAreaToggle, prop, "Split Area", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_SplitAreaToggle, prop))
{
++EditorGUI.indentLevel;
m_ColorFoldout = EditorGUI.Foldout(drawRect, m_ColorFoldout, "Color");
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
drawRect.width = pos.width;
if (m_ColorFoldout)
{
ChartEditorHelper.MakeList(ref drawRect, ref m_ColorSize, m_Color);
}
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
if (ChartEditorHelper.IsToggle(m_SplitAreaToggle, prop))
{
height += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_ColorFoldout)
{
SerializedProperty m_Data = prop.FindPropertyRelative("m_Color");
int num = m_Data.arraySize + 1;
height += num * EditorGUIUtility.singleLineHeight + (num - 1) * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUIUtility.standardVerticalSpacing;
}
}
return height;
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 988570bd6485942da9879649ed4adb5b
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,52 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(AxisTick), true)]
public class AxisTickDrawer : PropertyDrawer
{
private bool m_AxisTickToggle = false;
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_AlignWithLabel = prop.FindPropertyRelative("m_AlignWithLabel");
SerializedProperty m_Inside = prop.FindPropertyRelative("m_Inside");
SerializedProperty m_Length = prop.FindPropertyRelative("m_Length");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_AxisTickToggle, "Axis Tick", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_AxisTickToggle)
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_AlignWithLabel);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Inside);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Length);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
if (m_AxisTickToggle)
{
height += 3 * EditorGUIUtility.singleLineHeight + 2 * EditorGUIUtility.standardVerticalSpacing;
}
return height;
}
}
}

View File

@@ -1,13 +0,0 @@
fileFormatVersion: 2
guid: 7c7d45bc59dedc140b08f6e9d26ccd9d
timeCreated: 1555890921
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,106 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(DataZoom), true)]
public class DataZoomDrawer : PropertyDrawer
{
private bool m_DataZoomModuleToggle = false;
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Enable");
//SerializedProperty m_FilterMode = prop.FindPropertyRelative("m_FilterMode");
//SerializedProperty m_Orient = prop.FindPropertyRelative("m_Orient");
SerializedProperty m_SupportInside = prop.FindPropertyRelative("m_SupportInside");
SerializedProperty m_SupportSlider = prop.FindPropertyRelative("m_SupportSlider");
//SerializedProperty m_SupportSelect = prop.FindPropertyRelative("m_SupportSelect");
SerializedProperty m_ShowDataShadow = prop.FindPropertyRelative("m_ShowDataShadow");
SerializedProperty m_ShowDetail = prop.FindPropertyRelative("m_ShowDetail");
SerializedProperty m_ZoomLock = prop.FindPropertyRelative("m_ZoomLock");
// SerializedProperty m_Realtime = prop.FindPropertyRelative("m_Realtime");
// SerializedProperty m_BackgroundColor = prop.FindPropertyRelative("m_BackgroundColor");
SerializedProperty m_Height = prop.FindPropertyRelative("m_Height");
SerializedProperty m_Bottom = prop.FindPropertyRelative("m_Bottom");
SerializedProperty m_RangeMode = prop.FindPropertyRelative("m_RangeMode");
SerializedProperty m_Start = prop.FindPropertyRelative("m_Start");
SerializedProperty m_End = prop.FindPropertyRelative("m_End");
SerializedProperty m_MinShowNum = prop.FindPropertyRelative("m_MinShowNum");
SerializedProperty m_ScrollSensitivity = prop.FindPropertyRelative("m_ScrollSensitivity");
SerializedProperty m_FontSize = prop.FindPropertyRelative("m_FontSize");
SerializedProperty m_FontStyle = prop.FindPropertyRelative("m_FontStyle");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_DataZoomModuleToggle, "DataZoom", show);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_DataZoomModuleToggle)
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_SupportInside);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_SupportSlider);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_SupportSlider.boolValue)
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_ShowDataShadow);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_ShowDetail);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_FontSize);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_FontStyle);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
// EditorGUI.PropertyField(drawRect, m_Realtime);
// drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Height);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Bottom);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
--EditorGUI.indentLevel;
}
//EditorGUI.PropertyField(drawRect, m_SupportSelect);
//drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_ZoomLock);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_ScrollSensitivity);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_RangeMode);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Start);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_End);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_MinShowNum);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_Start.floatValue < 0) m_Start.floatValue = 0;
if (m_End.floatValue > 100) m_End.floatValue = 100;
if (m_MinShowNum.intValue < 0) m_MinShowNum.intValue = 0;
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
int num = 1;
if (m_DataZoomModuleToggle)
{
num += 8;
if (prop.FindPropertyRelative("m_SupportSlider").boolValue) num += 6;
}
height += num * EditorGUIUtility.singleLineHeight + (num - 1) * EditorGUIUtility.standardVerticalSpacing;
return height;
}
}
}

View File

@@ -1,13 +0,0 @@
fileFormatVersion: 2
guid: cba26e421f79077499f05aaf10d06b4f
timeCreated: 1559609801
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,55 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(Emphasis), true)]
public class EmphasisDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_EmphasisToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Label = prop.FindPropertyRelative("m_Label");
SerializedProperty m_ItemStyle = prop.FindPropertyRelative("m_ItemStyle");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_EmphasisToggle, prop, "Emphasis", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_EmphasisToggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Label);
drawRect.y += EditorGUI.GetPropertyHeight(m_Label);
EditorGUI.PropertyField(drawRect, m_ItemStyle);
drawRect.y += EditorGUI.GetPropertyHeight(m_ItemStyle);
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
if (ChartEditorHelper.IsToggle(m_EmphasisToggle, prop))
{
height += 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Label"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_ItemStyle"));
}
else
{
height += 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
}
return height;
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 7de9b5e4c5d474fdd88ebb89f0924305
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,82 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(GaugeAxis), true)]
public class GaugeAxisDrawer : PropertyDrawer
{
private bool m_DataFoldout = false;
private int m_DataSize = 0;
private Dictionary<string, bool> m_AxisLineToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_AxisLine = prop.FindPropertyRelative("m_AxisLine");
SerializedProperty m_SplitLine = prop.FindPropertyRelative("m_SplitLine");
SerializedProperty m_AxisTick = prop.FindPropertyRelative("m_AxisTick");
SerializedProperty m_AxisLabel = prop.FindPropertyRelative("m_AxisLabel");
SerializedProperty m_AxisLabelText = prop.FindPropertyRelative("m_AxisLabelText");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_AxisLineToggle, prop, "Gauge Axis", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_AxisLineToggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_AxisLine);
drawRect.y += EditorGUI.GetPropertyHeight(m_AxisLine);
EditorGUI.PropertyField(drawRect, m_SplitLine);
drawRect.y += EditorGUI.GetPropertyHeight(m_SplitLine);
EditorGUI.PropertyField(drawRect, m_AxisTick);
drawRect.y += EditorGUI.GetPropertyHeight(m_AxisTick);
EditorGUI.PropertyField(drawRect, m_AxisLabel);
drawRect.y += EditorGUI.GetPropertyHeight(m_AxisLabel);
drawRect.width = EditorGUIUtility.labelWidth + 10;
m_DataFoldout = EditorGUI.Foldout(drawRect, m_DataFoldout, "Axis Label Text");
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
drawRect.width = pos.width;
if (m_DataFoldout)
{
ChartEditorHelper.MakeList(ref drawRect, ref m_DataSize, m_AxisLabelText);
}
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
if (ChartEditorHelper.IsToggle(m_AxisLineToggle, prop))
{
height += 2 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_AxisLine"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_SplitLine"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_AxisTick"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_AxisLabel"));
if (m_DataFoldout)
{
SerializedProperty m_Data = prop.FindPropertyRelative("m_AxisLabelText");
int num = m_Data.arraySize + 1;
height += num * EditorGUIUtility.singleLineHeight + (num - 1) * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUIUtility.standardVerticalSpacing;
}
return height;
}
else
{
return 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
}
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: dec6cfc5ef85147738a81d8de84b079a
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,76 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(GaugeAxis.AxisLine), true)]
public class GaugeAxisLineDrawer : PropertyDrawer
{
private bool m_DataFoldout = false;
private int m_DataSize = 0;
private Dictionary<string, bool> m_Toggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Width = prop.FindPropertyRelative("m_Width");
SerializedProperty m_Opacity = prop.FindPropertyRelative("m_Opacity");
SerializedProperty m_BarBackgroundColor = prop.FindPropertyRelative("m_BarBackgroundColor");
SerializedProperty m_BarColor = prop.FindPropertyRelative("m_BarColor");
SerializedProperty m_StageColor = prop.FindPropertyRelative("m_StageColor");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_Toggle, prop, "Axis Line", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_Toggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Width);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Opacity);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BarColor);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BarBackgroundColor);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
m_DataFoldout = EditorGUI.Foldout(drawRect, m_DataFoldout, "Stage Color");
drawRect.width = pos.width;
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_DataFoldout)
{
ChartEditorHelper.MakeList(ref drawRect, ref m_DataSize, m_StageColor);
}
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
if (ChartEditorHelper.IsToggle(m_Toggle, prop))
{
float height = 6 * EditorGUIUtility.singleLineHeight + 5 * EditorGUIUtility.standardVerticalSpacing;
if (m_DataFoldout)
{
var arraySize = prop.FindPropertyRelative("m_StageColor").arraySize + 1;
height += arraySize * EditorGUIUtility.singleLineHeight + (arraySize) * EditorGUIUtility.standardVerticalSpacing;
height += 2 * EditorGUIUtility.standardVerticalSpacing;
return height;
}
return height;
}
else
{
return 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
}
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: eb7a86643ea2349c8ac2475ab81cb2f9
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: cc7cae70713a74fb496ef686296bc46b
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,54 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(GaugeAxis.SplitLine), true)]
public class GaugeAxisSplitDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_Toggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Length = prop.FindPropertyRelative("m_Length");
SerializedProperty m_LineStyle = prop.FindPropertyRelative("m_LineStyle");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_Toggle, prop, "Split Line", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_Toggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Length);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_LineStyle);
drawRect.y += EditorGUI.GetPropertyHeight(m_LineStyle);
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
if (ChartEditorHelper.IsToggle(m_Toggle, prop))
{
float height = 2 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_LineStyle"));
return height;
}
else
{
return 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
}
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: d11eb7847e5c74746a570a7c9f6b339a
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,57 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(GaugeAxis.AxisTick), true)]
public class GaugeAxisTickDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_Toggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Length = prop.FindPropertyRelative("m_Length");
SerializedProperty m_SplitNumber = prop.FindPropertyRelative("m_SplitNumber");
SerializedProperty m_LineStyle = prop.FindPropertyRelative("m_LineStyle");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_Toggle, prop, "Axis Tick", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_Toggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Length);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_SplitNumber);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_LineStyle);
drawRect.y += EditorGUI.GetPropertyHeight(m_LineStyle);
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
if (ChartEditorHelper.IsToggle(m_Toggle, prop))
{
float height = 3 * EditorGUIUtility.singleLineHeight + 2 * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_LineStyle"));
return height;
}
else
{
return 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
}
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: 5f561506277b949c1b22116a3f3d3f4f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,51 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(GaugePointer), true)]
public class GaugePointerDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_Toggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Width = prop.FindPropertyRelative("m_Width");
SerializedProperty m_Length = prop.FindPropertyRelative("m_Length");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_Toggle, prop, "Gauge Pointer", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_Toggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Width);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Length);
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
if (ChartEditorHelper.IsToggle(m_Toggle, prop))
{
return 3 * EditorGUIUtility.singleLineHeight + 2 * EditorGUIUtility.standardVerticalSpacing;
}
else
{
return 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
}
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: a3d180de37dd24cfc9bcbb46f650c902
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,58 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(Grid), true)]
public class GridDrawer : PropertyDrawer
{
private bool m_GridModuleToggle = false;
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty m_Show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Left = prop.FindPropertyRelative("m_Left");
SerializedProperty m_Right = prop.FindPropertyRelative("m_Right");
SerializedProperty m_Top = prop.FindPropertyRelative("m_Top");
SerializedProperty m_Bottom = prop.FindPropertyRelative("m_Bottom");
SerializedProperty m_BackgroundColor = prop.FindPropertyRelative("m_BackgroundColor");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_GridModuleToggle, "Grid",m_Show);
EditorGUI.LabelField(drawRect, "Grid", EditorStyles.boldLabel);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_GridModuleToggle)
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Left);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Right);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Top);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Bottom);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BackgroundColor);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
if (m_GridModuleToggle)
return 6 * EditorGUIUtility.singleLineHeight + 5 * EditorGUIUtility.standardVerticalSpacing;
else
return 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: f4142159d55a64e1d88d81ac84b714d0
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,67 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(IconStyle), true)]
public class IconStyleDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_IconStyleToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty m_Show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Layer = prop.FindPropertyRelative("m_Layer");
SerializedProperty m_Sprite = prop.FindPropertyRelative("m_Sprite");
SerializedProperty m_Color = prop.FindPropertyRelative("m_Color");
SerializedProperty m_Width = prop.FindPropertyRelative("m_Width");
SerializedProperty m_Height = prop.FindPropertyRelative("m_Height");
SerializedProperty m_Offset = prop.FindPropertyRelative("m_Offset");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_IconStyleToggle, prop, null, m_Show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_IconStyleToggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Layer);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Sprite);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Color);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Width);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Height);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Offset);
drawRect.y += EditorGUI.GetPropertyHeight(m_Offset);
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
if (ChartEditorHelper.IsToggle(m_IconStyleToggle, prop))
{
var hight = 6 * EditorGUIUtility.singleLineHeight + 6 * EditorGUIUtility.standardVerticalSpacing;
hight += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Offset"));
hight += EditorGUIUtility.standardVerticalSpacing;
return hight;
}
else
{
return EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
}
}
}
}

View File

@@ -1,62 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(ItemStyle), true)]
public class ItemStyleDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_ItemStyleToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Color = prop.FindPropertyRelative("m_Color");
SerializedProperty m_BorderType = prop.FindPropertyRelative("m_BorderType");
SerializedProperty m_BorderWidth = prop.FindPropertyRelative("m_BorderWidth");
SerializedProperty m_BorderColor = prop.FindPropertyRelative("m_BorderColor");
SerializedProperty m_Opacity = prop.FindPropertyRelative("m_Opacity");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_ItemStyleToggle, prop, "Item Style", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_ItemStyleToggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Color);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BorderType);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BorderWidth);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BorderColor);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Opacity);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
if (ChartEditorHelper.IsToggle(m_ItemStyleToggle, prop))
{
height += 6 * EditorGUIUtility.singleLineHeight + 5 * EditorGUIUtility.standardVerticalSpacing;
}
else
{
height += 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
}
return height;
}
}
}

View File

@@ -1,95 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(Legend), true)]
public class LegendDrawer : PropertyDrawer
{
private bool m_DataFoldout = false;
private int m_DataSize = 0;
private bool m_ShowJsonDataArea = false;
private string m_JsonDataAreaText;
private bool m_LegendModuleToggle = false;
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_SelectedMode = prop.FindPropertyRelative("m_SelectedMode");
SerializedProperty orient = prop.FindPropertyRelative("m_Orient");
SerializedProperty location = prop.FindPropertyRelative("m_Location");
SerializedProperty itemWidth = prop.FindPropertyRelative("m_ItemWidth");
SerializedProperty itemHeight = prop.FindPropertyRelative("m_ItemHeight");
SerializedProperty itemGap = prop.FindPropertyRelative("m_ItemGap");
SerializedProperty itemFontSize = prop.FindPropertyRelative("m_ItemFontSize");
SerializedProperty m_Formatter = prop.FindPropertyRelative("m_Formatter");
SerializedProperty m_Data = prop.FindPropertyRelative("m_Data");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_LegendModuleToggle, "Legend", show);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_LegendModuleToggle)
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, itemWidth);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, itemHeight);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, itemGap);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, itemFontSize);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_SelectedMode);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, orient);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, location);
drawRect.y += EditorGUI.GetPropertyHeight(location);
EditorGUI.PropertyField(drawRect, m_Formatter);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
drawRect.width = EditorGUIUtility.labelWidth + 10;
m_DataFoldout = EditorGUI.Foldout(drawRect, m_DataFoldout, "Data");
ChartEditorHelper.MakeJsonData(ref drawRect, ref m_ShowJsonDataArea, ref m_JsonDataAreaText, prop,pos.width);
drawRect.width = pos.width;
if (m_DataFoldout)
{
ChartEditorHelper.MakeList(ref drawRect, ref m_DataSize, m_Data);
}
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
if (m_LegendModuleToggle)
{
SerializedProperty location = prop.FindPropertyRelative("m_Location");
height += 7 * EditorGUIUtility.singleLineHeight + 6 * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(location);
height += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_DataFoldout)
{
SerializedProperty m_Data = prop.FindPropertyRelative("m_Data");
int num = m_Data.arraySize + 1;
height += num * EditorGUIUtility.singleLineHeight + (num - 1) * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUIUtility.standardVerticalSpacing;
}
}
if (m_ShowJsonDataArea)
{
height += EditorGUIUtility.singleLineHeight * 4 + EditorGUIUtility.standardVerticalSpacing;
}
height += 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
return height;
}
}
}

View File

@@ -1,13 +0,0 @@
fileFormatVersion: 2
guid: b96d10541649a23468168ba0bf1c0bc5
timeCreated: 1554395454
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,62 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(LineArrow), true)]
public class LineArrowStyleDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_LineArrowToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Position = prop.FindPropertyRelative("m_Position");
SerializedProperty m_Width = prop.FindPropertyRelative("m_Width");
SerializedProperty m_Height = prop.FindPropertyRelative("m_Height");
SerializedProperty m_Offset = prop.FindPropertyRelative("m_Offset");
SerializedProperty m_Dent = prop.FindPropertyRelative("m_Dent");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_LineArrowToggle, prop, "Line Arrow", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_LineArrowToggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Position);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Width);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Height);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Offset);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Dent);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
if (ChartEditorHelper.IsToggle(m_LineArrowToggle, prop))
{
height += 6 * EditorGUIUtility.singleLineHeight + 5 * EditorGUIUtility.standardVerticalSpacing;
}
else
{
height += 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
}
return height;
}
}
}

View File

@@ -1,59 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(LineStyle), true)]
public class LineStyleDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_LineStyleToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Type = prop.FindPropertyRelative("m_Type");
SerializedProperty m_Color = prop.FindPropertyRelative("m_Color");
SerializedProperty m_Width = prop.FindPropertyRelative("m_Width");
SerializedProperty m_Opacity = prop.FindPropertyRelative("m_Opacity");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_LineStyleToggle, prop, "Line Style", show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_LineStyleToggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Type);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Color);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Width);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Opacity);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
if (ChartEditorHelper.IsToggle(m_LineStyleToggle, prop))
{
height += 5 * EditorGUIUtility.singleLineHeight + 4 * EditorGUIUtility.standardVerticalSpacing;
}
else
{
height += 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
}
return height;
}
}
}

View File

@@ -1,93 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(Location), true)]
public class LocationDrawer : PropertyDrawer
{
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty align = prop.FindPropertyRelative("m_Align");
SerializedProperty left = prop.FindPropertyRelative("m_Left");
SerializedProperty right = prop.FindPropertyRelative("m_Right");
SerializedProperty top = prop.FindPropertyRelative("m_Top");
SerializedProperty bottom = prop.FindPropertyRelative("m_Bottom");
EditorGUI.PropertyField(drawRect, align, new GUIContent("Location"));
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
++EditorGUI.indentLevel;
switch ((Location.Align)align.enumValueIndex)
{
case Location.Align.TopCenter:
EditorGUI.PropertyField(drawRect, top);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
break;
case Location.Align.TopLeft:
EditorGUI.PropertyField(drawRect, top);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, left);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
break;
case Location.Align.TopRight:
EditorGUI.PropertyField(drawRect, top);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, right);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
break;
case Location.Align.BottomCenter:
EditorGUI.PropertyField(drawRect, bottom);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
break;
case Location.Align.BottomLeft:
EditorGUI.PropertyField(drawRect, bottom);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, left);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
break;
case Location.Align.BottomRight:
EditorGUI.PropertyField(drawRect, bottom);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, right);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
break;
case Location.Align.Center:
break;
case Location.Align.CenterLeft:
EditorGUI.PropertyField(drawRect, left);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
break;
case Location.Align.CenterRight:
EditorGUI.PropertyField(drawRect, right);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
break;
}
--EditorGUI.indentLevel;
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
SerializedProperty align = prop.FindPropertyRelative("m_Align");
switch ((Location.Align)align.enumValueIndex)
{
case Location.Align.Center:
return 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
case Location.Align.TopCenter:
case Location.Align.BottomCenter:
case Location.Align.CenterLeft:
case Location.Align.CenterRight:
return 2 * EditorGUIUtility.singleLineHeight + 2 * EditorGUIUtility.standardVerticalSpacing;
default:
return 3 * EditorGUIUtility.singleLineHeight + 3 * EditorGUIUtility.standardVerticalSpacing;
}
}
}
}

View File

@@ -1,136 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(Radar), true)]
public class RadarDrawer : PropertyDrawer
{
SerializedProperty m_Shape;
SerializedProperty m_PositionType;
SerializedProperty m_Radius;
SerializedProperty m_SplitNumber;
SerializedProperty m_Center;
SerializedProperty m_LineStyle;
SerializedProperty m_SplitArea;
SerializedProperty m_Indicator;
SerializedProperty m_IndicatorGap;
SerializedProperty m_IndicatorList;
private Dictionary<string, bool> m_RadarModuleToggle = new Dictionary<string, bool>();
private Dictionary<string, bool> m_IndicatorToggle = new Dictionary<string, bool>();
private bool m_IndicatorJsonAreaToggle = false;
private string m_IndicatorJsonAreaText;
private int m_IndicatorSize;
private int m_BackgroundColorSize;
private void InitProperty(SerializedProperty prop)
{
m_Shape = prop.FindPropertyRelative("m_Shape");
m_PositionType = prop.FindPropertyRelative("m_PositionType");
m_Radius = prop.FindPropertyRelative("m_Radius");
m_SplitNumber = prop.FindPropertyRelative("m_SplitNumber");
m_Center = prop.FindPropertyRelative("m_Center");
m_LineStyle = prop.FindPropertyRelative("m_LineStyle");
m_SplitArea = prop.FindPropertyRelative("m_SplitArea");
m_Indicator = prop.FindPropertyRelative("m_Indicator");
m_IndicatorGap = prop.FindPropertyRelative("m_IndicatorGap");
m_IndicatorList = prop.FindPropertyRelative("m_IndicatorList");
}
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
InitProperty(prop);
Rect drawRect = pos;
float defaultLabelWidth = EditorGUIUtility.labelWidth;
float defaultFieldWidth = EditorGUIUtility.fieldWidth;
drawRect.height = EditorGUIUtility.singleLineHeight;
int index = ChartEditorHelper.GetIndexFromPath(prop);
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_RadarModuleToggle, prop, "Radar " + index, null, true);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_RadarModuleToggle, prop))
{
++EditorGUI.indentLevel;
EditorGUIUtility.labelWidth = defaultLabelWidth;
EditorGUIUtility.fieldWidth = defaultFieldWidth;
EditorGUI.PropertyField(drawRect, m_Shape);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_PositionType);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.LabelField(drawRect, "Center");
var startX = drawRect.x + EditorGUIUtility.labelWidth - EditorGUI.indentLevel * 15;
var tempWidth = (pos.width - startX + 35) / 2;
var centerXRect = new Rect(startX, drawRect.y, tempWidth, drawRect.height);
var centerYRect = new Rect(centerXRect.x + tempWidth - 20, drawRect.y, tempWidth, drawRect.height);
while (m_Center.arraySize < 2)
{
m_Center.InsertArrayElementAtIndex(m_Center.arraySize);
}
EditorGUI.PropertyField(centerXRect, m_Center.GetArrayElementAtIndex(0), GUIContent.none);
EditorGUI.PropertyField(centerYRect, m_Center.GetArrayElementAtIndex(1), GUIContent.none);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Radius);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_SplitNumber);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_LineStyle);
drawRect.y += EditorGUI.GetPropertyHeight(m_LineStyle);
EditorGUI.PropertyField(drawRect, m_SplitArea);
drawRect.y += EditorGUI.GetPropertyHeight(m_SplitArea);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_IndicatorToggle, prop, "Indicators", m_Indicator, false);
ChartEditorHelper.MakeJsonData(ref drawRect, ref m_IndicatorJsonAreaToggle, ref m_IndicatorJsonAreaText, prop, pos.width, 20);
drawRect.width = pos.width;
drawRect.x = pos.x;
if (ChartEditorHelper.IsToggle(m_IndicatorToggle, prop))
{
EditorGUI.PropertyField(drawRect, m_IndicatorGap);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
ChartEditorHelper.MakeList(ref drawRect, ref m_IndicatorSize, m_IndicatorList);
}
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
int propNum = 1;
if (ChartEditorHelper.IsToggle(m_RadarModuleToggle, prop))
{
propNum += 7;
if (m_IndicatorJsonAreaToggle) propNum += 4;
float height = propNum * EditorGUIUtility.singleLineHeight + (propNum - 1) * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_LineStyle"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_SplitArea"));
if (ChartEditorHelper.IsToggle(m_IndicatorToggle, prop))
{
m_IndicatorList = prop.FindPropertyRelative("m_IndicatorList");
height += EditorGUIUtility.singleLineHeight * 3 + EditorGUIUtility.standardVerticalSpacing;
for (int i = 0; i < m_IndicatorList.arraySize; i++)
{
height += EditorGUI.GetPropertyHeight(m_IndicatorList.GetArrayElementAtIndex(i));
}
}
return height;
}
else
{
return EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
}
}
}
}

View File

@@ -1,13 +0,0 @@
fileFormatVersion: 2
guid: 09bf71ecf64f321468ac28af28bec878
timeCreated: 1555563898
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,64 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(Radar.Indicator), true)]
public class RadarIndicatorDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_RadarModuleToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
SerializedProperty m_Name = prop.FindPropertyRelative("m_Name");
SerializedProperty m_Max = prop.FindPropertyRelative("m_Max");
SerializedProperty m_Min = prop.FindPropertyRelative("m_Min");
SerializedProperty m_TextStyle = prop.FindPropertyRelative("m_TextStyle");
Rect drawRect = pos;
float defaultLabelWidth = EditorGUIUtility.labelWidth;
float defaultFieldWidth = EditorGUIUtility.fieldWidth;
drawRect.height = EditorGUIUtility.singleLineHeight;
int index = ChartEditorHelper.GetIndexFromPath(prop);
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_RadarModuleToggle, prop, "Indicator " + index, m_Name, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_RadarModuleToggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Name);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Min);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Max);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_TextStyle);
drawRect.y += EditorGUI.GetPropertyHeight(m_TextStyle);
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
if (ChartEditorHelper.IsToggle(m_RadarModuleToggle, prop))
{
var height = 4 * EditorGUIUtility.singleLineHeight + 3 * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_TextStyle"));
return height;
}
else
{
return EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
}
}
}
}

View File

@@ -1,13 +0,0 @@
fileFormatVersion: 2
guid: 7fb5d2a98871919459956dc252632435
timeCreated: 1556220585
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,523 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(Serie), true)]
public class SerieDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_SerieModuleToggle = new Dictionary<string, bool>();
private List<bool> m_DataFoldout = new List<bool>();
private bool m_ShowJsonDataArea = false;
private string m_JsonDataAreaText;
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty type = prop.FindPropertyRelative("m_Type");
SerializedProperty name = prop.FindPropertyRelative("m_Name");
SerializedProperty stack = prop.FindPropertyRelative("m_Stack");
SerializedProperty m_AxisIndex = prop.FindPropertyRelative("m_AxisIndex");
SerializedProperty m_RadarIndex = prop.FindPropertyRelative("m_RadarIndex");
SerializedProperty m_MinShow = prop.FindPropertyRelative("m_MinShow");
SerializedProperty m_MaxShow = prop.FindPropertyRelative("m_MaxShow");
SerializedProperty m_MaxCache = prop.FindPropertyRelative("m_MaxCache");
SerializedProperty m_LineStyle = prop.FindPropertyRelative("m_LineStyle");
SerializedProperty m_ItemStyle = prop.FindPropertyRelative("m_ItemStyle");
SerializedProperty m_LineArrow = prop.FindPropertyRelative("m_LineArrow");
SerializedProperty m_LineType = prop.FindPropertyRelative("m_LineType");
SerializedProperty m_SampleDist = prop.FindPropertyRelative("m_SampleDist");
SerializedProperty m_SampleType = prop.FindPropertyRelative("m_SampleType");
SerializedProperty m_SampleAverage = prop.FindPropertyRelative("m_SampleAverage");
SerializedProperty m_BarType = prop.FindPropertyRelative("m_BarType");
SerializedProperty m_BarPercentStack = prop.FindPropertyRelative("m_BarPercentStack");
SerializedProperty m_BarWidth = prop.FindPropertyRelative("m_BarWidth");
SerializedProperty m_BarGap = prop.FindPropertyRelative("m_BarGap");
SerializedProperty m_BarZebraWidth = prop.FindPropertyRelative("m_BarZebraWidth");
SerializedProperty m_BarZebraGap = prop.FindPropertyRelative("m_BarZebraGap");
SerializedProperty m_AreaStyle = prop.FindPropertyRelative("m_AreaStyle");
SerializedProperty m_Symbol = prop.FindPropertyRelative("m_Symbol");
SerializedProperty m_RoseType = prop.FindPropertyRelative("m_RoseType");
SerializedProperty m_Space = prop.FindPropertyRelative("m_Space");
SerializedProperty m_Center = prop.FindPropertyRelative("m_Center");
SerializedProperty m_Radius = prop.FindPropertyRelative("m_Radius");
SerializedProperty m_Label = prop.FindPropertyRelative("m_Label");
SerializedProperty m_Emphasis = prop.FindPropertyRelative("m_Emphasis");
SerializedProperty m_Animation = prop.FindPropertyRelative("m_Animation");
SerializedProperty m_DataDimension = prop.FindPropertyRelative("m_ShowDataDimension");
SerializedProperty m_ShowDataName = prop.FindPropertyRelative("m_ShowDataName");
SerializedProperty m_ShowDataIcon = prop.FindPropertyRelative("m_ShowDataIcon");
SerializedProperty m_Min = prop.FindPropertyRelative("m_Min");
SerializedProperty m_Max = prop.FindPropertyRelative("m_Max");
SerializedProperty m_StartAngle = prop.FindPropertyRelative("m_StartAngle");
SerializedProperty m_EndAngle = prop.FindPropertyRelative("m_EndAngle");
SerializedProperty m_SplitNumber = prop.FindPropertyRelative("m_SplitNumber");
//SerializedProperty m_Clockwise = prop.FindPropertyRelative("m_Clockwise");
SerializedProperty m_ArcShaped = prop.FindPropertyRelative("m_ArcShaped");
SerializedProperty m_GaugeType = prop.FindPropertyRelative("m_GaugeType");
SerializedProperty m_GaugeAxis = prop.FindPropertyRelative("m_GaugeAxis");
SerializedProperty m_GaugePointer = prop.FindPropertyRelative("m_GaugePointer");
SerializedProperty m_TitleStyle = prop.FindPropertyRelative("m_TitleStyle");
SerializedProperty m_Datas = prop.FindPropertyRelative("m_Data");
int index = InitToggle(prop);
string moduleName = "Serie " + index;
var toggle = ChartEditorHelper.MakeFoldout(ref drawRect, ref m_SerieModuleToggle, prop, moduleName, show);
if (!toggle)
{
drawRect.x = EditorGUIUtility.labelWidth - (EditorGUI.indentLevel - 1) * 15 - 2 + 20;
drawRect.width = pos.width - drawRect.x + 15;
EditorGUI.PropertyField(drawRect, type, GUIContent.none);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
}
else
{
var serieType = (SerieType)type.enumValueIndex;
++EditorGUI.indentLevel;
drawRect.x = pos.x;
drawRect.width = pos.width;
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, type);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, name);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
switch (serieType)
{
case SerieType.Line:
EditorGUI.PropertyField(drawRect, stack);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_AxisIndex);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_MinShow);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_MaxShow);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_MaxCache);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_MinShow.intValue < 0) m_MinShow.intValue = 0;
if (m_MinShow.intValue < 0) m_MinShow.intValue = 0;
if (m_MaxCache.intValue < 0) m_MaxCache.intValue = 0;
EditorGUI.PropertyField(drawRect, m_LineType);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_SampleDist);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_SampleType);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_SampleAverage);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Symbol);
drawRect.y += EditorGUI.GetPropertyHeight(m_Symbol);
EditorGUI.PropertyField(drawRect, m_LineStyle);
drawRect.y += EditorGUI.GetPropertyHeight(m_LineStyle);
EditorGUI.PropertyField(drawRect, m_LineArrow);
drawRect.y += EditorGUI.GetPropertyHeight(m_LineArrow);
EditorGUI.PropertyField(drawRect, m_ItemStyle);
drawRect.y += EditorGUI.GetPropertyHeight(m_ItemStyle);
EditorGUI.PropertyField(drawRect, m_AreaStyle);
drawRect.y += EditorGUI.GetPropertyHeight(m_AreaStyle);
EditorGUI.PropertyField(drawRect, m_Label);
drawRect.y += EditorGUI.GetPropertyHeight(m_Label);
EditorGUI.PropertyField(drawRect, m_Emphasis);
drawRect.y += EditorGUI.GetPropertyHeight(m_Emphasis);
break;
case SerieType.Bar:
EditorGUI.PropertyField(drawRect, stack);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_AxisIndex);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_MinShow);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_MaxShow);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_MaxCache);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_MinShow.intValue < 0) m_MinShow.intValue = 0;
if (m_MinShow.intValue < 0) m_MinShow.intValue = 0;
if (m_MaxCache.intValue < 0) m_MaxCache.intValue = 0;
EditorGUI.PropertyField(drawRect, m_BarType);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BarPercentStack);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BarWidth);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BarGap);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BarZebraWidth);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BarZebraGap);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Symbol);
drawRect.y += EditorGUI.GetPropertyHeight(m_Symbol);
EditorGUI.PropertyField(drawRect, m_ItemStyle);
drawRect.y += EditorGUI.GetPropertyHeight(m_ItemStyle);
EditorGUI.PropertyField(drawRect, m_AreaStyle);
drawRect.y += EditorGUI.GetPropertyHeight(m_AreaStyle);
EditorGUI.PropertyField(drawRect, m_Label);
drawRect.y += EditorGUI.GetPropertyHeight(m_Label);
EditorGUI.PropertyField(drawRect, m_Emphasis);
drawRect.y += EditorGUI.GetPropertyHeight(m_Emphasis);
break;
case SerieType.Pie:
EditorGUI.PropertyField(drawRect, m_RoseType);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Space);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
ChartEditorHelper.MakeTwoField(ref drawRect, pos.width, m_Center, "Center");
ChartEditorHelper.MakeTwoField(ref drawRect, pos.width, m_Radius, "Radius");
EditorGUI.PropertyField(drawRect, m_ArcShaped);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Label);
drawRect.y += EditorGUI.GetPropertyHeight(m_Label);
EditorGUI.PropertyField(drawRect, m_Emphasis);
drawRect.y += EditorGUI.GetPropertyHeight(m_Emphasis);
break;
case SerieType.Radar:
EditorGUI.PropertyField(drawRect, m_RadarIndex);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Symbol);
drawRect.y += EditorGUI.GetPropertyHeight(m_Symbol);
break;
case SerieType.Scatter:
case SerieType.EffectScatter:
EditorGUI.PropertyField(drawRect, m_Symbol);
drawRect.y += EditorGUI.GetPropertyHeight(m_Symbol);
EditorGUI.PropertyField(drawRect, m_Label);
drawRect.y += EditorGUI.GetPropertyHeight(m_Label);
EditorGUI.PropertyField(drawRect, m_Emphasis);
drawRect.y += EditorGUI.GetPropertyHeight(m_Emphasis);
break;
case SerieType.Heatmap:
EditorGUI.PropertyField(drawRect, m_Label);
drawRect.y += EditorGUI.GetPropertyHeight(m_Label);
EditorGUI.PropertyField(drawRect, m_Emphasis);
drawRect.y += EditorGUI.GetPropertyHeight(m_Emphasis);
break;
case SerieType.Gauge:
EditorGUI.PropertyField(drawRect, m_GaugeType);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
ChartEditorHelper.MakeTwoField(ref drawRect, pos.width, m_Center, "Center");
//ChartEditorHelper.MakeTwoField(ref drawRect, pos.width, m_Radius, "Radius");
EditorGUI.PropertyField(drawRect, m_Radius.GetArrayElementAtIndex(0), new GUIContent("Radius"));
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Min);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Max);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_StartAngle);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_EndAngle);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_SplitNumber);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_SplitNumber.intValue > 36)
{
m_SplitNumber.intValue = 36;
}
EditorGUI.PropertyField(drawRect, m_ArcShaped);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_TitleStyle);
drawRect.y += EditorGUI.GetPropertyHeight(m_TitleStyle);
EditorGUI.PropertyField(drawRect, m_GaugeAxis);
drawRect.y += EditorGUI.GetPropertyHeight(m_GaugeAxis);
EditorGUI.PropertyField(drawRect, m_GaugePointer);
drawRect.y += EditorGUI.GetPropertyHeight(m_GaugePointer);
EditorGUI.PropertyField(drawRect, m_ItemStyle);
drawRect.y += EditorGUI.GetPropertyHeight(m_ItemStyle);
EditorGUI.PropertyField(drawRect, m_Label);
drawRect.y += EditorGUI.GetPropertyHeight(m_Label);
EditorGUI.PropertyField(drawRect, m_Emphasis);
drawRect.y += EditorGUI.GetPropertyHeight(m_Emphasis);
break;
}
EditorGUI.PropertyField(drawRect, m_Animation);
drawRect.y += EditorGUI.GetPropertyHeight(m_Animation);
drawRect.width = EditorGUIUtility.labelWidth + 10;
m_DataFoldout[index] = EditorGUI.Foldout(drawRect, m_DataFoldout[index], "Data");
ChartEditorHelper.MakeJsonData(ref drawRect, ref m_ShowJsonDataArea, ref m_JsonDataAreaText, prop, pos.width);
drawRect.width = pos.width;
if (m_DataFoldout[index])
{
EditorGUI.indentLevel++;
float nameWid = 42;
EditorGUI.PropertyField(new Rect(drawRect.x, drawRect.y, pos.width - 2 * nameWid - 2, pos.height), m_DataDimension);
var nameRect = new Rect(pos.width - 2 * nameWid + 14, drawRect.y, nameWid, pos.height);
if (GUI.Button(nameRect, new GUIContent("Name")))
{
m_ShowDataName.boolValue = !m_ShowDataName.boolValue;
}
var iconRect = new Rect(pos.width - nameWid + 14, drawRect.y, nameWid, pos.height);
if (GUI.Button(iconRect, new GUIContent("Other")))
{
m_ShowDataIcon.boolValue = !m_ShowDataIcon.boolValue;
}
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
var listSize = m_Datas.arraySize;
listSize = EditorGUI.IntField(drawRect, "Size", listSize);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (listSize < 0) listSize = 0;
if (m_DataDimension.intValue < 1) m_DataDimension.intValue = 1;
int dimension = m_DataDimension.intValue;
bool showName = m_ShowDataName.boolValue;
bool showIcon = m_ShowDataIcon.boolValue;
bool showSelected = (serieType == SerieType.Pie);
if (listSize != m_Datas.arraySize)
{
while (listSize > m_Datas.arraySize)
m_Datas.InsertArrayElementAtIndex(m_Datas.arraySize);
while (listSize < m_Datas.arraySize)
m_Datas.DeleteArrayElementAtIndex(m_Datas.arraySize - 1);
}
if (listSize > 30)
{
int num = listSize > 10 ? 10 : listSize;
for (int i = 0; i < num; i++)
{
DrawDataElement(ref drawRect, dimension, m_Datas, showName, showIcon, showSelected, i, pos.width);
}
if (num >= 10)
{
EditorGUI.LabelField(drawRect, "...");
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
DrawDataElement(ref drawRect, dimension, m_Datas, showName, showIcon, showSelected, listSize - 1, pos.width);
}
}
else
{
for (int i = 0; i < m_Datas.arraySize; i++)
{
DrawDataElement(ref drawRect, dimension, m_Datas, showName, showIcon, showSelected, i, pos.width);
}
}
EditorGUI.indentLevel--;
}
--EditorGUI.indentLevel;
}
}
private void DrawDataElement(ref Rect drawRect, int dimension, SerializedProperty m_Datas, bool showName,
bool showDetail, bool showSelected, int index, float currentWidth)
{
var lastX = drawRect.x;
var lastWid = drawRect.width;
var lastFieldWid = EditorGUIUtility.fieldWidth;
var lastLabelWid = EditorGUIUtility.labelWidth;
var serieData = m_Datas.GetArrayElementAtIndex(index);
var sereName = serieData.FindPropertyRelative("m_Name");
var selected = serieData.FindPropertyRelative("m_Selected");
var data = serieData.FindPropertyRelative("m_Data");
var fieldCount = dimension + (showName ? 1 : 0);
if (fieldCount <= 1)
{
while (2 > data.arraySize)
data.InsertArrayElementAtIndex(data.arraySize);
SerializedProperty element = data.GetArrayElementAtIndex(1);
if (showSelected)
{
drawRect.width = drawRect.width - 18;
EditorGUI.PropertyField(drawRect, element, new GUIContent("Element " + index));
drawRect.x = currentWidth - 45;
EditorGUI.PropertyField(drawRect, selected, GUIContent.none);
drawRect.x = lastX;
drawRect.width = lastWid;
}
else
{
EditorGUI.PropertyField(drawRect, element, new GUIContent("Element " + index));
}
drawRect.y += EditorGUI.GetPropertyHeight(element) + EditorGUIUtility.standardVerticalSpacing;
}
else
{
EditorGUI.LabelField(drawRect, "Element " + index);
var startX = drawRect.x + EditorGUIUtility.labelWidth - EditorGUI.indentLevel * 15;
var dataWidTotal = (currentWidth - (startX + 20.5f + 1));
var dataWid = dataWidTotal / fieldCount;
var xWid = dataWid - 4;
for (int i = 0; i < dimension; i++)
{
while (i >= data.arraySize - 1)
{
data.InsertArrayElementAtIndex(data.arraySize);
}
drawRect.x = startX + i * xWid;
drawRect.width = dataWid + 40;
SerializedProperty element = data.GetArrayElementAtIndex(dimension <= 1 ? 1 : i);
EditorGUI.PropertyField(drawRect, element, GUIContent.none);
}
if (showName)
{
drawRect.x = startX + (fieldCount - 1) * xWid;
drawRect.width = dataWid + 40;
EditorGUI.PropertyField(drawRect, sereName, GUIContent.none);
}
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
drawRect.x = lastX;
drawRect.width = lastWid;
EditorGUIUtility.fieldWidth = lastFieldWid;
EditorGUIUtility.labelWidth = lastLabelWid;
}
if (showDetail)
{
EditorGUI.indentLevel++;
var m_Icon = serieData.FindPropertyRelative("m_IconStyle");
var m_EnableLabel = serieData.FindPropertyRelative("m_EnableLabel");
var m_Label = serieData.FindPropertyRelative("m_Label");
EditorGUI.PropertyField(drawRect, m_Icon);
drawRect.y += EditorGUI.GetPropertyHeight(m_Icon);
EditorGUI.PropertyField(drawRect, m_EnableLabel);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_EnableLabel.boolValue)
{
EditorGUI.indentLevel++;
EditorGUI.PropertyField(drawRect, m_Label);
drawRect.y += EditorGUI.GetPropertyHeight(m_Label);
EditorGUI.indentLevel--;
}
EditorGUI.indentLevel--;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
int index = InitToggle(prop);
if (!m_SerieModuleToggle[prop.propertyPath])
{
return EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
}
else
{
SerializedProperty type = prop.FindPropertyRelative("m_Type");
var serieType = (SerieType)type.enumValueIndex;
switch (serieType)
{
case SerieType.Line:
height += 13 * EditorGUIUtility.singleLineHeight + 12 * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Symbol"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_LineStyle"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_LineArrow"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_ItemStyle"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_AreaStyle"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Label"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Emphasis"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Animation"));
break;
case SerieType.Bar:
height += 16 * EditorGUIUtility.singleLineHeight + 15 * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_ItemStyle"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_AreaStyle"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Label"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Emphasis"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Animation"));
break;
case SerieType.Pie:
height += 9 * EditorGUIUtility.singleLineHeight + 8 * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Label"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Emphasis"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Animation"));
break;
case SerieType.Radar:
height += 5 * EditorGUIUtility.singleLineHeight + 4 * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Emphasis"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Animation"));
break;
case SerieType.Scatter:
case SerieType.EffectScatter:
height += 4 * EditorGUIUtility.singleLineHeight + 3 * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Symbol"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Label"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Emphasis"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Animation"));
break;
case SerieType.Heatmap:
height += 4 * EditorGUIUtility.singleLineHeight + 3 * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Label"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Emphasis"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Animation"));
break;
case SerieType.Gauge:
height += 13 * EditorGUIUtility.singleLineHeight + 12 * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_TitleStyle"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_GaugeAxis"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_GaugePointer"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_ItemStyle"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Label"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Emphasis"));
height += EditorGUI.GetPropertyHeight(prop.FindPropertyRelative("m_Animation"));
break;
}
if (m_DataFoldout[index])
{
SerializedProperty m_Data = prop.FindPropertyRelative("m_Data");
height += 2 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
int num = m_Data.arraySize;
if (num > 30)
{
num = 11;
height += (num + 1) * EditorGUIUtility.singleLineHeight + (num) * EditorGUIUtility.standardVerticalSpacing;
}
else
{
height += (num) * EditorGUIUtility.singleLineHeight + (num - 1) * EditorGUIUtility.standardVerticalSpacing;
}
if (prop.FindPropertyRelative("m_ShowDataIcon").boolValue)
{
for (int i = 0; i < num; i++)
{
var item = m_Data.GetArrayElementAtIndex(i);
height += 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
height += EditorGUI.GetPropertyHeight(item.FindPropertyRelative("m_IconStyle"));
if (item.FindPropertyRelative("m_EnableLabel").boolValue)
height += EditorGUI.GetPropertyHeight(item.FindPropertyRelative("m_Label"));
}
}
}
if (m_ShowJsonDataArea)
{
height += EditorGUIUtility.singleLineHeight * 4 + EditorGUIUtility.standardVerticalSpacing;
}
return height;
}
}
private int InitToggle(SerializedProperty prop)
{
int index = 0;
var sindex = prop.propertyPath.LastIndexOf('[');
var eindex = prop.propertyPath.LastIndexOf(']');
if (sindex >= 0 && eindex >= 0)
{
var str = prop.propertyPath.Substring(sindex + 1, eindex - sindex - 1);
int.TryParse(str, out index);
}
if (index >= m_DataFoldout.Count)
{
m_DataFoldout.Add(false);
}
return index;
}
}
}

View File

@@ -1,13 +0,0 @@
fileFormatVersion: 2
guid: c30d9496b99e39944a6987e390bed91f
timeCreated: 1555200849
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,127 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(SerieLabel), true)]
public class SerieLabelDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_SerieLabelToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty show = prop.FindPropertyRelative("m_Show");
SerializedProperty m_Position = prop.FindPropertyRelative("m_Position");
SerializedProperty m_Formatter = prop.FindPropertyRelative("m_Formatter");
SerializedProperty m_Offset = prop.FindPropertyRelative("m_Offset");
SerializedProperty m_Margin = prop.FindPropertyRelative("m_Margin");
SerializedProperty m_Rotate = prop.FindPropertyRelative("m_Rotate");
SerializedProperty m_PaddingLeftRight = prop.FindPropertyRelative("m_PaddingLeftRight");
SerializedProperty m_PaddingTopBottom = prop.FindPropertyRelative("m_PaddingTopBottom");
SerializedProperty m_Color = prop.FindPropertyRelative("m_Color");
SerializedProperty m_BackgroundColor = prop.FindPropertyRelative("m_BackgroundColor");
SerializedProperty m_BackgroundWidth = prop.FindPropertyRelative("m_BackgroundWidth");
SerializedProperty m_BackgroundHeight = prop.FindPropertyRelative("m_BackgroundHeight");
SerializedProperty m_FontSize = prop.FindPropertyRelative("m_FontSize");
SerializedProperty m_FontStyle = prop.FindPropertyRelative("m_FontStyle");
SerializedProperty m_Line = prop.FindPropertyRelative("m_Line");
SerializedProperty m_LineType = prop.FindPropertyRelative("m_LineType");
SerializedProperty m_LineColor = prop.FindPropertyRelative("m_LineColor");
SerializedProperty m_LineWidth = prop.FindPropertyRelative("m_LineWidth");
SerializedProperty m_LineLength1 = prop.FindPropertyRelative("m_LineLength1");
SerializedProperty m_LineLength2 = prop.FindPropertyRelative("m_LineLength2");
SerializedProperty m_Border = prop.FindPropertyRelative("m_Border");
SerializedProperty m_BorderWidth = prop.FindPropertyRelative("m_BorderWidth");
SerializedProperty m_BorderColor = prop.FindPropertyRelative("m_BorderColor");
SerializedProperty m_ForceENotation = prop.FindPropertyRelative("m_ForceENotation");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_SerieLabelToggle, prop, null, show, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_SerieLabelToggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_Position);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.LabelField(drawRect, "Offset");
var startX = drawRect.x + EditorGUIUtility.labelWidth - EditorGUI.indentLevel * 15;
var tempWidth = (drawRect.width - startX + 52) / 2;
var centerXRect = new Rect(startX, drawRect.y, tempWidth, drawRect.height);
var centerYRect = new Rect(centerXRect.x + tempWidth - 38, drawRect.y, tempWidth, drawRect.height);
var x = EditorGUI.FloatField(centerXRect, m_Offset.vector3Value.x);
var y = EditorGUI.FloatField(centerYRect, m_Offset.vector3Value.y);
m_Offset.vector3Value = new Vector3(x, y);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Margin);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Formatter);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Color);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BackgroundColor);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BackgroundWidth);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BackgroundHeight);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Rotate);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_PaddingLeftRight);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_PaddingTopBottom);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_FontSize);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_FontStyle);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Border);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BorderWidth);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_BorderColor);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Line);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_LineType);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_LineColor);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_LineWidth);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_LineLength1);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_LineLength2);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_ForceENotation);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
if (ChartEditorHelper.IsToggle(m_SerieLabelToggle, prop))
{
height += 24 * EditorGUIUtility.singleLineHeight + 23 * EditorGUIUtility.standardVerticalSpacing;
}
else
{
height = EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
}
return height;
}
}
}

View File

@@ -1,11 +0,0 @@
fileFormatVersion: 2
guid: d30d82b48b553451fad726478777a02e
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,101 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(SerieSymbol), true)]
public class SerieSymbolDrawer : PropertyDrawer
{
private Dictionary<string, bool> m_SerieSymbolToggle = new Dictionary<string, bool>();
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty m_Type = prop.FindPropertyRelative("m_Type");
SerializedProperty m_SizeType = prop.FindPropertyRelative("m_SizeType");
SerializedProperty m_Size = prop.FindPropertyRelative("m_Size");
SerializedProperty m_SelectedSize = prop.FindPropertyRelative("m_SelectedSize");
SerializedProperty m_DataIndex = prop.FindPropertyRelative("m_DataIndex");
SerializedProperty m_DataScale = prop.FindPropertyRelative("m_DataScale");
SerializedProperty m_SelectedDataScale = prop.FindPropertyRelative("m_SelectedDataScale");
SerializedProperty m_Color = prop.FindPropertyRelative("m_Color");
SerializedProperty m_Opacity = prop.FindPropertyRelative("m_Opacity");
SerializedProperty m_StartIndex = prop.FindPropertyRelative("m_StartIndex");
SerializedProperty m_Interval = prop.FindPropertyRelative("m_Interval");
SerializedProperty m_ForceShowLast = prop.FindPropertyRelative("m_ForceShowLast");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_SerieSymbolToggle, prop, null, m_Type, false);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (ChartEditorHelper.IsToggle(m_SerieSymbolToggle, prop))
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_SizeType);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
SerieSymbolSizeType sizeType = (SerieSymbolSizeType)m_SizeType.enumValueIndex;
switch (sizeType)
{
case SerieSymbolSizeType.Custom:
EditorGUI.PropertyField(drawRect, m_Size);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_SelectedSize);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
break;
case SerieSymbolSizeType.FromData:
EditorGUI.PropertyField(drawRect, m_DataIndex);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_DataScale);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_SelectedDataScale);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
break;
case SerieSymbolSizeType.Callback:
break;
}
EditorGUI.PropertyField(drawRect, m_Color);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Opacity);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_StartIndex);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_Interval);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_ForceShowLast);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
if (ChartEditorHelper.IsToggle(m_SerieSymbolToggle, prop))
{
SerializedProperty m_SizeType = prop.FindPropertyRelative("m_SizeType");
SerieSymbolSizeType sizeType = (SerieSymbolSizeType)m_SizeType.enumValueIndex;
switch (sizeType)
{
case SerieSymbolSizeType.Custom:
return 9 * EditorGUIUtility.singleLineHeight + 9 * EditorGUIUtility.standardVerticalSpacing;
case SerieSymbolSizeType.FromData:
return 10 * EditorGUIUtility.singleLineHeight + 10 * EditorGUIUtility.standardVerticalSpacing;
case SerieSymbolSizeType.Callback:
return 9 * EditorGUIUtility.singleLineHeight + 9 * EditorGUIUtility.standardVerticalSpacing;
}
return 9 * EditorGUIUtility.singleLineHeight + 9 * EditorGUIUtility.standardVerticalSpacing;
}
else
{
return EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
}
}
}
}

View File

@@ -1,58 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(Series), true)]
public class SeriesDrawer : PropertyDrawer
{
private int m_DataSize = 0;
private bool m_ShowJsonDataArea = false;
private string m_JsonDataAreaText;
private bool m_SeriesModuleToggle = false;
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty m_Series = prop.FindPropertyRelative("m_Series");
drawRect.width = EditorGUIUtility.labelWidth + 10;
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_SeriesModuleToggle, "Series");
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
//ChartEditorHelper.MakeJsonData(ref drawRect, ref m_ShowJsonDataArea, ref m_JsonDataAreaText, prop);
drawRect.width = pos.width;
if (m_SeriesModuleToggle)
{
ChartEditorHelper.MakeList(ref drawRect, ref m_DataSize, m_Series);
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
float height = 0;
if (m_SeriesModuleToggle)
{
SerializedProperty m_Data = prop.FindPropertyRelative("m_Series");
height += 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
for (int i = 0; i < m_Data.arraySize; i++)
{
height += EditorGUI.GetPropertyHeight(m_Data.GetArrayElementAtIndex(i));
}
}
if (m_ShowJsonDataArea)
{
height += EditorGUIUtility.singleLineHeight * 3 + EditorGUIUtility.standardVerticalSpacing;
}
height += 1 * EditorGUIUtility.singleLineHeight + 1 * EditorGUIUtility.standardVerticalSpacing;
return height;
}
}
}

View File

@@ -1,13 +0,0 @@
fileFormatVersion: 2
guid: 6c2458b1901047547b1a59d097786816
timeCreated: 1556016849
licenseType: Free
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,65 +0,0 @@
/******************************************/
/* */
/* Copyright (c) 2018 monitor1394 */
/* https://github.com/monitor1394 */
/* */
/******************************************/
using UnityEditor;
using UnityEngine;
namespace XCharts
{
[CustomPropertyDrawer(typeof(Settings), true)]
public class SettingsDrawer : PropertyDrawer
{
private bool m_SettingsModuleToggle = false;
public override void OnGUI(Rect pos, SerializedProperty prop, GUIContent label)
{
Rect drawRect = pos;
drawRect.height = EditorGUIUtility.singleLineHeight;
SerializedProperty m_LineSmoothStyle = prop.FindPropertyRelative("m_LineSmoothStyle");
SerializedProperty m_LineSmoothness = prop.FindPropertyRelative("m_LineSmoothness");
SerializedProperty m_LineSegmentDistance = prop.FindPropertyRelative("m_LineSegmentDistance");
SerializedProperty m_CicleSmoothness = prop.FindPropertyRelative("m_CicleSmoothness");
SerializedProperty m_VisualMapTriangeLen = prop.FindPropertyRelative("m_VisualMapTriangeLen");
SerializedProperty m_PieTooltipExtraRadius = prop.FindPropertyRelative("m_PieTooltipExtraRadius");
SerializedProperty m_PieSelectedOffset = prop.FindPropertyRelative("m_PieSelectedOffset");
ChartEditorHelper.MakeFoldout(ref drawRect, ref m_SettingsModuleToggle, "Settings");
EditorGUI.LabelField(drawRect, "Settings", EditorStyles.boldLabel);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
if (m_SettingsModuleToggle)
{
++EditorGUI.indentLevel;
EditorGUI.PropertyField(drawRect, m_LineSmoothStyle);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_LineSmoothness);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_LineSegmentDistance);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_CicleSmoothness);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_VisualMapTriangeLen);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_PieTooltipExtraRadius);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
EditorGUI.PropertyField(drawRect, m_PieSelectedOffset);
drawRect.y += EditorGUIUtility.singleLineHeight + EditorGUIUtility.standardVerticalSpacing;
--EditorGUI.indentLevel;
}
}
public override float GetPropertyHeight(SerializedProperty prop, GUIContent label)
{
int num = 1;
if (m_SettingsModuleToggle)
{
num = 8;
}
return num * EditorGUIUtility.singleLineHeight + (num - 1) * EditorGUIUtility.standardVerticalSpacing;
}
}
}

Some files were not shown because too many files have changed in this diff Show More