跳到主要内容
Version: v3.10.2

常见问题

FAQ 1:如何调整坐标轴与背景的边距?
FAQ 2:如何让初始动画重新播放?
FAQ 3:如何自定义折线图饼图的颜色?
FAQ 4:如何给坐标轴上的文本加上单位?
FAQ 5:如何让柱形图的柱子堆叠显示?
FAQ 6:如何让柱形图的柱子同柱但不重叠?
FAQ 7:如何调整柱形图的柱子宽度和间距?
FAQ 8:如何调整柱形图单个柱子的颜色?
FAQ 9:如何调整图表的对齐方式?
FAQ 10:可以显示超过1000以上的大数据吗?
FAQ 11:折线图可以画虚线、点线、点划线吗?
FAQ 12:如何限定Y轴的值范围?
FAQ 13:如何自定义数值轴刻度大小?
FAQ 14:如何在数据项顶上显示文本?
FAQ 15:如何给数据项自定义图标?
FAQ 16:锯齿太严重,如何让图表更顺滑?
FAQ 17:为什么鼠标移上图表Tooltip不显示?
FAQ 18:如何取消Tooltip的竖线?
FAQ 19:如何自定义Tooltip的显示内容?
FAQ 20:如何让y轴显示多位小数?
FAQ 21:如何用代码动态更新数据?
FAQ 22:如何显示图例?为什么有时候图例无法显示?
FAQ 23:如何做成预设?
FAQ 24:如何在图表上画点画线等自定义内容?
FAQ 25:如何实现心电图类似的数据移动效果?
FAQ 26:如何使用背景组件?有什么条件限制?
FAQ 27:Mesh can not have more than 65000 vertices?
FAQ 28:为什么serie里设置的参数运行后又被重置了?
FAQ 29:如何修改serie的symbol的颜色?
FAQ 30:导入或更新XCharts时TMP报错如何处理?
FAQ 31:支持空数据吗?如何实现折线图断开的效果?
FAQ 32:2.x版本升级3.x版本时常见的问题有哪些?
FAQ 33:折线图如何两边不留空白而从0坐标开始显示?
FAQ 34:如何设置部分Serie不显示Tooltip?

如何调整坐标轴与背景的边距

调整Grid组件,可调整上下左右边距。

如何让初始动画重新播放

调用chart.AnimationReset()接口。

如何自定义折线图饼图的颜色

通过ThemecolorPalette调整,或者部分Serie下的LineStyleItemStyle

如何给坐标轴上的文本加上单位

通过formatternumericFormatter参数,在LegendAxisAxisLabelTooltopSerieLabel都提供该参数的配置。

如何让柱形图的柱子堆叠显示

设置Serie下的stackstack相同的serie会堆叠显示在一个柱子上。

如何让柱形图的柱子同柱但不重叠

设置Serie下的barGap-1stack为空。

如何调整柱形图的柱子宽度和间距

调整Serie下的barWidthbarGap,多个serie时最后一个seriebarWidthbarGap有效。

如何调整柱形图单个柱子的颜色

可通过调整单个Data下的ItemStyle调整,也可以通过两个serie同柱不堆叠来实现,通过设置数据项为0来达到类似效果。

如何调整图表的对齐方式

调整RectTransform的锚点,和UGUI的其他组件的用法一致。

可以显示超过1000以上的大数据吗

可以。但UGUI对单个Graphic限制65000个顶点,所以太多的数据不一定能显示完全。可通过设置采样距离sampleDist开启采样简化过密曲线。也可以通过设置一些参数来减少图表的顶点数有助于显示更多数据。如缩小图表的尺寸,关闭或减少坐标轴的客户端绘制,关闭Seriesymbollabel显示等。折线图的普通线图Normal比平滑线图Smooth占用顶点数更少。1.5.0以上版本可以设置largelargeThreshold参数来开启性能模式。

折线图可以画虚线点线点划线吗

可以。通过Serie下的lineType选择线条样式。当要显示的数据过多(成千以上)数据间过密时建议使用Normal或者Step样式。

如何限定y轴的值范围

设置Axis下的minMaxTypeCustom,自定义minmax

如何自定义数值轴刻度大小

默认时通过Axis下的splitNumer进行自动划分。也可以设置interval自定义刻度大小。

如何在数据项顶上显示文本

通过设置Serie下的Label。3.0版本需要先添加LabelStyle组件。

如何给数据项自定义图标

通过设置Seriedata下的数据项可单独设置icon相关参数。

锯齿太严重如何让图表更顺滑

开启抗锯齿设置(在Unity里设置)。调整UI渲染模式为Camera模式,开启MSAA,设置4倍或更高抗锯齿。

为什么鼠标移上图表tooltip不显示

确认Tooltip是否开启;确认父节点是否关闭了鼠标事件。

如何取消tooltip的竖线

设置TooltiptypeNone。或者调整lineStyle的参数。

如何自定义tooltip的显示内容

自定义总的内容可以通过Tooltipformatter。如果只是想调整所有的serie的显示格式可以用itemFormattertitleFormatter结合。如果想每个serie的显示格式不一样,可以定制serieitemStyle里的tooltipFormatter。具体的用法请查阅XCharts配置项手册

如何让y轴显示多位小数

设置Axis下的AxisLabel中的formatter{value:f1}{value:f2}1.5.0及以上版本通过numericFormatter设置。

如何用代码动态更新数据

请查阅Example下的代码,Example13_LineSimple.cs就是一个简单添加数据构建折线图的例子,其他Demo也都是通过代码控制不同的组件实现不同的功能,相关API请查看文档:XChartsAPI接口

如何显示图例为什么有时候图例无法显示

首先,你的serie里的name需有值不为空。然后开启Legend显示,里面的data可以默认为空,表示显示所有的图例。如果你只想显示部分serie的图例,在data中填入要显示的图例的name即可。如果data中的值都不是系列的name,那图例就不会显示。

如何做成预设

做成prefab前,执行一下Rebuild Chart Object重新刷新节点,避免有冗余的节点存在。

如何在图表上画点画线等自定义内容

XCharts有自定义绘制回调onCustomDraw,具体可参考Example12_CustomDrawing.cs

如何实现心电图类似的数据移动效果

参考Example目录下的Example_Dynamic.cs。主要通过设置maxCache参数实现。axisserie都设置相同的maxCachemaxCache可固定数据个数,当数据超过设定时会先删除第一个在添加新数据,实现数据移动效果。

如何使用背景组件有什么条件限制

设置background组件的showtrue

区域折线图在用半透明颜色时有时候会一条叠加的线

这是区域折线图绘制的bug。可以用浅的不透的颜色替代半透明颜色。

mesh_cannot_have_more_than_65000_vertices

这是UGUI对单个Graphic的顶点数限制。XCharts是将图形绘制在单个Graphic上,所以也会有这个限制。解决的办法可以参考:FAQ 10:可以显示超过1000以上的大数据吗?

为什么serie里设置的参数运行后又被重置了

检测下代码里是否调用了RemoveData()并重新添加Serie了。如果想保留Serie的配置可以只ClearData(),然后重新添加数据。

如何修改serie的symbol的颜色

Symbol 的颜色是使用的 ItemStylecolor

导入或更新xcharts时tmp报错怎么办

XCharts默认时不开启TMP,所以asmdef上没有TMP的引用。当本地开启TMP后再更新XCharts可能会出现这个问题。可通过以下两种方式解决:

  1. 找到XCharts.Runtime.asmdefXCharts.Editor.asmdef,手动加上 TextMeshPro的引用
  2. 移除PlayerSettingScripting Define SymbolsdUI_TextMeshPro

3.8.0版本后增加XCharts-Daemon守护程序,将XCharts-Daemon导入项目后,在更新XCharts时守护程序会自动根据本地开启的TMP情况刷新asmdef,确保编译正常。

支持空数据吗如何实现折线图断开的效果

Seriedatadouble类型,所以无法表示空数据。可通过开启Serieignore和指定ignoreValue来达到空数据的效果。也可以每个SerieData设置ignore参数。忽略数据后断开还是连接可设置ignoreLineBreak参数。

xcharts2升级xcharts3时常见的问题有哪些

  1. 'XCharts.Runtime.XChartsMgr' is missing the class attribute 'ExtensionOfNativeClass'! 3.x版本时不需要挂载XChartsMgr,直接删掉场景上的_xcharts_节点即可。

折线图如何两边不留空白而从0坐标开始显示

设置X轴的boundaryGap参数。

如何设置部分serie不显示tooltip

serieitemStyleitemFormatter设置为-可以忽略tooltip