历史版本33 :图表应用常见问题 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

Finereport 版本
11.0

1.2 应用场景

本文介绍图表使用过程中,常见的问题及排查步骤。

图表性能问题可参考:图表常见性能问题

地图常见问题可参考:地图常见问题

2. 浏览器问题导致图表显示异常编辑

2.1 IE 浏览器预览图表显示异常

问题描述:

IE10 及以下版本浏览器,图表显示效果不太好,同时某些功能不支持。

原因分析:

  • IE10 及以下版本浏览器,不支持图表属性 pointer-events:none ,导致开启大数据模式的图形无法正常响应交互。

  • 由于性能问题,IE8 及以下的浏览器禁止了动画、渐变特效以及图表缩放功能,阴影效果也做了一定的改变。

  • IE 浏览器暂时不支持工具栏导出 SVG 。

  • IE8 禁用了饼图旋转。

解决方案:

建议使用 IE11、chrome、firefox 等浏览器。

2.2 谷歌浏览器上甘特图时间轴模糊

问题描述:

甘特图的时间轴,在谷歌浏览器上显示有一层模糊的阴影,项目轴显示就正常,在ie浏览器上就正常

原因分析:

时间轴和项目轴代码上是没有任何差别的,就是谷歌内核浏览器的字体渲染问题,而之所以时间轴看起来要比项目轴模糊一点,是因为谷歌浏览器对于宽度较大的前端 text 标签渲染程度不太好

解决方案:

增大字体或者分辨率的方式来解决,或者就是更换浏览器。

2.3 图表展示呈现锯齿状

问题描述:

做的大屏模板,预览发现饼图边缘呈现锯齿状,如下图所示:

原因分析:

浏览器的硬件加速功能会造成不可知的异常,一般情况没有特殊需求不需要开启。

解决方案:

谷歌浏览器设置里关闭硬件加速功能。

2.4 图表在电视机上不显示

问题描述:

任意模板的图表在小米电视的谷歌浏览器无法展示

原因分析:

小米电视本身缓存的问题

解决方案:

清理了电视整体的缓存(非浏览器缓存)后正常。

3. 图表设置问题导致显示异常编辑

3.1 报错:chart painter not found

问题描述:

报表预览时,图表无法正常显示且超级链接失效,报错信息如下图所示:

原因分析:

图表控件以"_"结尾

解决方案:

图表控件名称命名时不允许以下划线结尾,且不允许在组件名中间有双下划。

3.2 图表排序错乱

问题描述:

两张模板,数据集是不同参数过滤出来的情况, 且都做了排序,一个是图表中正常排序显示, 一个是乱的顺序。

原因分析:

相同分类名/系统名的情况下,汇总方式选择无,只按照第一个的值来显示。

解决方案:

调整源数据,保持分类名不同,数据无重复;汇总方式选择求和,按照求和的值来展示。

3.3 ds1.select()实现图表标题和图表块标题

问题描述:

当图表标题和图表块标题用ds1.select()公式时,图表块的标题无法实现获取到控件的参数值。

解决方案:

加一个直接引用再去掉不显示,使用的公式为:indexofarray(split($p1+","+ds1.select(aaa),","),2),如下图所示:

2022-11-22_14-29-17.png

3.4 图表绑定单元格数据,当多分类底层数据部分相同时,单元格取数错乱

问题描述:

图表绑定单元格数据,多分类,如下所示:

  • 当分类A(地区)下的分类B(销售员)的值不相同时,多分类图表显示正常。

  • 当分类A(地区)下的分类B(销售员)的值有相同的值时,多分类图表显示时,分类错乱。

原因分析:

图表绑定单元格数据,当多分类底层数据部分相同时或者有空值时,单元格取数错乱,类似需求有521448 ,494376,452012

解决方案:

图表换成数据集数据源

3.5 单元格数据源图表在10和11版本下展示不一致

问题描述:

同一个模板,采用单元格数据源展示,折线图在10上正常展示,在11上展示成点

原因分析:

11版本的的图表取数逻辑重构导致

解决方案:

安装图表数据源兼容插件 ,将模版切换成旧版取数逻辑展示正常

3.6 图表边框缺失

问题描述:

单元格图表边区边框显示不完整,如下图所示:


原因分析:

单元格属性设置中默认有左右各 2px 的缩进。
解决方案:

  • 用单元格边框实现图表边框。

  • 选中图表,将缩进默认是 2px,修改成 0 即可。如下图所示:

3.7 图表块放大后背景色不跟随body背景色

问题描述:

决策报表的 body 设置了深色背景,但是使用工具栏放大图表块时,图表的背景变为了白色,如下图所示:

1652346409947551.gif

解决方案:

图表背景色来源于图表区设置的背景色,不会跟随 body 改变,由于图表区默认背景色是白色,所以放大后会是白色背景。

想要实现放大后图表背景色保持跟 body 一致,且不会影响到直接预览的效果,可以将图表区背景色设置成 body 背景相同的颜色,并将不透明度调成 0,如下图所示:

最终效果如下图所示:

1652346409947551.gif

4. 图表导出常见问题编辑

4.1 图表导出效果不一致

问题描述:

图表旋转时,带有括号的字符会导致预览和导出效果不一致,如下图所示

原因分析:

1)括号是中文的,各个浏览器的显示不一样。

2)缺少对应字体。
解决方案:

1)括号符号换成英文的。

2)安装对应字体或更换字体。

4.2 arm系统图表导出显示锯齿形状

问题描述:

图表导出后整体异常,显示为锯齿形状。如下图所示:

解决方案:

对于部分如Oracle jdk  arm 版本的jdk1.8导出图表会出现锯齿状,需要更换jdk,可从亚马逊官网下载。

4.3 图表导出空白/很慢,日志提示GCC版本过低

问题描述:

1)导出图表空白,且模板有报错信息:

"C library and JDK version do not meet the requirements, Please upgrade GBLIC to 2.17 And GLIBCXX to 3.4.19 or JDK to 1.8"

2)定时调度时,导出图表空白,系统消息提示运行失败,日志中报错:

"C library and JDK version do not meet the requirements, Please upgrade GBLIC to 2.17 And GLIBCXX to 3.4.19 or JDK to 1.8"

解决方案:

可参考帮助文档检查是否需要升级GCC:图表导出升级说明

4.4 大数据量图表导出后数据缺失

问题描述:

图表导出后数据缺失,与预览效果不一致。

解决方案:

参考 图表导出说明 查看是否开启图表导出数据量限制。

4.5 图表导出显示“com.fr.chart.chartattr.ChartPainter”

原因分析:

图表单元格属性中选择了用HTML显示内容,如下图所示:

解决方案:

修改为默认。

4.6 图表导出1kb,空白

问题描述:

用图表自带导出按钮导出柱形图,导出png只有1kb,打开后没有图表。

解决方案:

造成导出空白的是其中某个分类的数据问题,在数据库里重新编辑下字段数据,触发下保存即可。

5. 图表刷新问题编辑

5.1 报表块定时刷新插件图表刷新后变成空

问题描述:

用了报表块定时刷新插件,图表刷新后变成空

原因分析:

单元格图表是不能刷新的。报表块刷新相当于页面重新加载。

解决方案:

模板设置当前仅当 “报表块刷新时长<图表块刷新时长” ,才不会出现空数据的情况。

6.图表接口常见问题编辑

图表接口相关说明可参考:图表接口

6.1 调整浏览器窗口后排序失效

问题描述:

决策报表使用 图表排序接口 进行排序,JS代码写在图表的初始化后事件中,初次预览正常排序,缩小浏览器窗口后排序失效。如下所示:

1654862295227139.gif

原因分析:

浏览器窗口调整,图表随之进行缩放,不会重新初始化,因此不会调用初始化事件。

解决方案:

可参考:图表排序后缩放浏览器失效

6.2 数据刷新后图表排序不刷新排序

问题描述:

使用图表排序接口进行排序,当数据源是变动的,数据刷新之后图表不会自动排序。

解决方案:

可参考:数据刷新后图表排序自动刷新

7. 其他问题编辑

7.1 日志中出现提示:使用了未注册的功能-动态图表

问题描述:

使用图表时出现:无动画效果、没有系列选中高亮效果和图例交互效果、无图表缩放功能(包括轴缩放和框选缩放的操作以及地图的缩放)、无工具栏功能(右上角无抽屉按钮)、无图表超链和钻取功能、无旋转功能等,或日志中出现提示「使用了未注册的功能-动态图表」,如下图所示:

原因分析:

未购买H5动态图表和高级图表交互功能,可参考:未购买H5动态图表和高级图表交互功能的影响

7.2 图表数据配置变空

问题描述:

切换数据库之后,所有模板都发生了图表数据配置消失,但预览依然正常的现象。如下图所示:

2022-11-22_14-29-17.png

原因分析:

通过查看报表源码可以看到,保存的配置信息是小写的,而数据集的字段是大写的。修改数据库表字段名称,图表的数据集配置界面会清空,可以预览的原因是数据库表字段是英文,修改了表字段的大小写,因为报表在计算的时候大小写不敏感。

解决方案:

1)换回原来的库以快速恢复

2)手动修改每张模板的数据集配置

3)批量修改数据的字段名为小写(如oracle数据库,字段名默认为大写)