大多数客户端都需要GraphQL客户端库才能使用GraphQL API。我知道Tableau支持Rest API,并想了解是否可以在Tableau中使用基于GraphQL的API?
谢谢,
我是一个初学者,试图将Tableau可视化嵌入到我的网页中,这样无论何时点击链接,都会在页面上呈现可视化.但浏览器加载tableauSoftware对象时出错.我该如何初始化这个对象?
我正在使用Tableau服务器试用版
<html>
<head>
<script type='text/javascript' src='http://localhost:85/javascripts/api/viz_v1.js'></script>
<script>
function initializeViz() {
var placeholderDiv = document.getElementById("tableauViz");
var url2 = "http://localhost:85/views/test_page/Sheet1?:embed=y&:display_count=no";
viz = new tableauSoftware.Viz(placeholderDiv, url2);
}
</script>
</head>
<body>
<a href="#" onclick="$('#tableauViz').html(''); initializeViz()">visualize</a>
<div class id ="tableauViz"></div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
我有Tableau报告,我在列中按类别显示数据.
该表显示数据上没有过滤器时的所有列.但是当应用过滤器时,某些类别没有数据,因此表缩小,隐藏没有数据的列
有没有办法在该列中始终显示列而不管数据?
请看下面的截图.
问题:
如何通过javascript-API存储 - 然后检索 - Tableau视图的自定义状态?
描述:
我正在开发一个网站,我们目前允许任何用户将一组Tableau视图协作到类似PowerPoint的在线演示文稿中供以后使用.在我们当前的实现中,Tableau图的状态不会被存储,因此用户必须在每次持有演示文稿的同时应用他或她的所需过滤器,选择工作表等.这是我们现在想要避免的.
最简单的解决方案是存储和检索通过底栏界面访问的"共享"链接之一; 这些链接包含当前视图的状态,但到目前为止,我们无法做到这一点:首先,由于域问题,我们不能简单地从嵌入代码iframe中获取Share-links; 其次,API方法workbook.getUrl()似乎不包括当前视图的状态.
我目前正在研究workbook.rememberCustomViewAsync(name)和workbook.showCustomViewAsync(name)方法,这看起来像是一种可能的解决方案.但是,我似乎无法从这两种方法中得到任何明智的结果,因为它们最终在运行时会产生模糊的,无信息的500错误.
示例文件和错误:
为了更好地说明这个问题,我创建了一个最小的演示(下面的代码片段),尝试使用上述第二种方法.在Google Chrome中打开时,两个按钮("保存状态"和"检索状态")都不适合我,并且可以在开发人员工具中看到以下错误(分别是http响应消息和开发人员控制台输出):
Http响应:
<br>
2015-11-11 16:14:17.916
(VkNpWQrCQaIAACQo2YYAAAPi,0,0)
Run Code Online (Sandbox Code Playgroud)
控制台错误:
POST http://public.tableau.com/vizql/w/Book6_426/v/YRKE/save_customized_view/sessions/208A699D34E14708A2268AA10A827C99-0:0 500 (Internal Server Error)
Run Code Online (Sandbox Code Playgroud)
有没有人知道如何解决这个问题,或者通过提供代码示例(所描述的第二种方法),或通过任何其他方式?任何帮助,将不胜感激!
PS:此处的片段模拟器将导致Access-Control-Allow-Origin错误.该文件也已在此发布.
<html>
<head>
<title>A simple Tableau API demo</title>
<!--script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script-->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<!--script type="text/javascript" src="https://online.tableau.com/javascripts/api/tableau_v8.js"></script-->
<script type="text/javascript" src="https://online.tableau.com/javascripts/api/tableau-2.min.js "></script>
</head>
<body>
<H2>Custom view storage demo</H2>
<button id="remember-button">
Remember state 'test'
</button>
<button id="retrieve-button">
Retrieve state 'test'
</button>
<div id="viz-placeholder" style="width: 1000px; height: …
Run Code Online (Sandbox Code Playgroud)我有一堆R脚本可以读取各种来源的数据,执行所需的所有分析并进行一些可视化.现在,我需要将可视化部分传递给Tableau,并在后者中准备整个仪表板.
从我知道我可以全部保存data.frames
到.Rdata
文件,并在加载的Tableau他们,但似乎从长远来看,要cumbersone,而整个程序应尽可能自动化.
我要知道的第二个选项是读取Tableau中的数据,连接到R via Rserve
并从中调用简单的R脚本Tableau
.这是一个选择,但是:
所以我的问题是集成R和Tableau的最佳方法是什么,以便在我执行RI中的所有分析之后只能用几个图更新早期Tableau仪表板中的数据?
我想在同一个图表上为用户创建一个显示Level Funnel的仪表板.
我的数据如下:
从这些数据,我想创建如下图:
但是在画面中,我无法将下面的图表组合起来,这些图表是日复一日的:
我试着按照这个步骤,http://downloads.tableausoftware.com/quickstart/feature-guides/combo_charts.pdf但是我找不到菜单中的"自定义标记"按钮.
如果你可以帮助我将这些图组合成一个图表,那将是很好的.
谢谢.
我在画面中有两个数据源(A和B).关系是1:n.表A(主表),列ID(主键),字段1,字段2 .... 表B列ID(不是PK),字段X,字段Y.
我想使用表B进行字段X和字段Y的过滤,然后使用表A中的相关表格绘图数据,其中SQL中的过滤器等效于WHERE A.ID IN(SELECT B.ID FROM TableB B)其中表B已经被字段X和字段Y的值过滤掉了.
经过一些研究,我找到了两个不能说服我的选择:
选项1:在两个表之间使用公共内部联接,然后对表A的度量使用AVG和COUNT DISTINCT等聚合函数以避免重复.
选项2:根据从Tableau发送的参数在表A上使用自定义SQL,并在数据库级别过滤表A.
最佳选择是在以下结构中的源之间进行连接
SELECT A.*FROM tableA INNER JOIN(从表B中选择DISTINCT ID)字段X IN(从Tableau动态选择)和字段Y IN(从Tableau动态选择)B ON A.ID = B.ID
这样的事可能吗?
谢谢!!
据我所知,您可以使用tableau服务器根据其他工作表制作工作表,但我无法弄清楚如何添加新数据源并创建初始工作表而根本不使用桌面版本.
我只是在行中有一堆维度,所以它只是一个信息表,我需要隐藏一列数据,因为它的机密,但我需要那里的数据,因为它影响表的其余部分的布局.
我们使用TableauSDK(Java)将数据提取发布到Tableau Server.
我们与Tableau服务器的连接是通过代理.因此,我们刚刚设置的Java系统属性https.proxyHost
,https.proxyPort
,http.proxyHost
和http.proxyPort
.
但似乎在上面的java系统属性中完成的代理设置没有生效.请帮助我们在TableauSDK(Java)中配置代理设置