Tableau使viz高度与服务器上的API相同

时间:2014-11-05 18:36:33

标签: tableau

我有以下选项可以在我的容器中正确显示viz。宽度明智地显示正确。我的问题是高度,我此时已将其指定为500px。如何使高度与tableau服务器上的高度相同?

var vizDivObject = document.getElementById('tableauVizDiv');
var options = {
                    width: vizDivObject.offsetWidth,
                    height: "500px", //vizDivObject.offsetHeight,
                    hideTabs: true,
                    hideToolbar: true
                };

2 个答案:

答案 0 :(得分:0)

根据Tableau JavaScript API参考手册,在创建viz之前,我无法找到获取工作簿高度的方法。将创建viz以填充您定义的区域。如果未在div或initializeViz()函数中设置默认高度,则默认值为600px。 http://onlinehelp.tableau.com/v8.1/server/en-us/js_api_ref.htm

要获取tableau使用的默认大小,我打开tableau服务器上的tableau工作簿,然后在“Share - > Embed Code”下,您将找到tableau服务器使用的大小。然后我在div中使用这个用途

<div id="tableauVizDiv" style="width: 1304px; height: 862px;"></div>

答案 1 :(得分:0)

就我而言,我们支持平板电脑和桌面浏览器。以下内容适用于我,因为我们的所有测试都是仪表板,以及选项width: vizDivObject.offsetWidth

var workbook = viz.getWorkbook();
var activeSheet = workbook.getActiveSheet();
if (activeSheet.getSheetType() === 'dashboard') { //worksheet or dashboard
                    //alert(activeSheet.getName());
                    activeSheet.changeSizeAsync({
                        behavior: tableauSoftware.SheetSizeBehavior.AUTOMATIC
                    });
                }