问题描述
大家好
我正在尝试从 oracle 在 OBIEE 中创建一个圆环图,我使用的版本是:12.2.1.4.0。
请注意,我们的 OBIEE 位于我们的组织网络中,无法访问互联网。 所以我不能使用任何需要互联网的解决方案,比如 Google Api。
甜甜圈图表示例:
只有饼图可用:
非常感谢大家..
解决方法
数据可视化具有开箱即用的圆环图类型。它在 12.2.1.4 中可用。
,您可以使用 D3 通过叙述来创建它,但您需要自己编写代码。
要做到这一点,您需要
- 使 d3 在您的 BI 服务器上可用(我不记得 12.2.1.4 中是否已经存在 d3.js)
- 创建要绘制图表的分析
- 从 https://www.d3-graph-gallery.com/graph/donut_basic.html 中提取代码并放入 narative(记得勾选 contains HTML 复选框)
假设你有一张看起来像的表 |姓名 |价值 | | ---- | ---- | | | 9 | |乙 | 20 | | | | 30 | | d | 8 | |电子 | 12 |
前缀
<!-- Load D3 library,need to change URL acccordingly -->
<script src="/analytics/res/[release string]/d3.js" />
<!-- Create div to hold your chart -->
<div id="my_dataviz"></div>
<!-- Start my donut chart script -->
<Script>
var data = {
叙述
@1: @2
行分隔符
,
后缀
}
// the d3 script references above minus the starting <script> tag and the section which sets data
</script>
它是如何工作的
关键是叙述位。 @1 引用第一列,@2 引用第二列,依此类推。
这只是动态构建脚本,因此输出最终看起来像
var data = {a: 9,b: 20,c:30,d:8,e:12}
您可以根据需要更改此设置、添加工具提示以在悬停时显示值、在中间显示总计等。
如果 D3 不存在(而且要找到它有点麻烦,但转到域主页和 find . -name "d3*js"
并查看弹出的内容),那么您将需要某处使 d3 库可用(简单如果您在 BI 前面有 OHS)请查看 https://gianniceresa.com/2016/12/deploy-custom-folder-obiee-12c-analyticsres/ 以创建在本地访问脚本的地方
缺点
这种方法并非没有缺点。第一个是您需要在 javascript 中对此进行编码。这不是太难,网上也有很多例子,但显然比创建一个普通图表要困难得多。
另一个正在出口。由于这些图表是在浏览器中呈现的,而 BI 只是认为它们是 html,因此它们不会正确导出(您将看到原始 HTML/javascript)