目录

  • tableau2019.1 安装
  • tableau可视化教程
  • Tabpy
  • 简介
  • Anaconda安装与配置Tabpy
  • Tabpy函数部署
  • tableau使用python函数计算字段
  • tableau连接mongodb
  • 数据看板发布以及共享


tableau2019.1 安装

tableau可视化教程

Tabpy

简介

TabPy实现了tableau的计算字段里嵌入python或R代码(可加入一些机器学习或数据处理的库)。它是一个基于Tornado和其他Python库的Python进程,将计算字段嵌入的代码传输到后台(web后台基于Tornado),由后台计算完后(可调用第三方库如机器学习相关的库)将结果再放回到前端展示。所以TabPy由两个主要组件构成:

  1. 基于Tornado的web服务进程(Server),运行REST API传回的python代码,执行完毕后,再传回前端。
  2. client library.

Anaconda安装与配置Tabpy

安装要求:tornado包的版本要是5.1.1,如果不是,则重新安装

pip install tornado==5.1.1 --user

安装tabpy-client和tabpy-server

  1. Tabpy Server, 一个远程服务器,用于运行从tableau传递过来的python代码;
  2. Tabpy client, 用于将用户建立的数据分析或数据挖掘的模型发布到Tabpy Server, 增强代码可重用性。

第一步,打开anaconda promt,安装

conda install tabpy-client
conda install tabpy-server
  1. 切换到上面两个包的安装目录:默认在C:\Users\Administrator\Anaconda3\Lib\site-packages\tabpy_server这个目录下,找到startup.bat文件,双击运行
  2. 打开tableau,帮助->设置和性能->管理外部服务连接

    测试连接成功说明tableau已于tabpy-server连接成功。

Tabpy函数部署

分为以下几个步骤:

  1. TabPy启动函数
  2. 功能性函数自定义
  3. 已定义函数部署
  4. schedule运行。由于Tabpy服务启动后需要在后台一直运行并保持不关闭,这里采用多线程与Sleep结合的方式,使服务启动后停顿一会再启动自定义函数的部署
import os
import time
from multiprocessing import Process
import tabpy_client
import numpy as np

# 服务启动
def starts():
    os.system(r"C:\ProgramData\Anaconda3\Lib\site-packages\tabpy_server\startup.bat")
    print('*'*30+'Succeed'+'*'*30)

# 自定义函数
def add(a,b):
    return np.add(np.array(a),np.array(b)).tolist()

# 函数部署
def clients():
    client = tabpy_client.Client('http://localhost:9004')
    print('\n' + '*' * 50 + 'TabPy Deployment Succeeds' + '*' * 50 + '\n')
    client.deploy(name='add', obj=add, override=True)

# Schedule脚本运行
if __name__ == '__main__':
    s = Process(target=starts)
    s.start()
    time.sleep(5)
    runs = Process(target=clients)
    runs.start()

运行成功,add函数已经上传到tabpy服务器上,所以在部署函数以及tableau用python函数计算字段是,tabpy-server要在后台一直运行。

tableau使用python函数计算字段

直接用add函数:

Tableau 与Python 结合使用 tableau连接python_数据


直接在tableau中写代码

Tableau 与Python 结合使用 tableau连接python_数据源_02


SCRIPT_REAL是输出类型,还有SCRIPT_BOOL,SCRIPT_INT,SCRIPT_STR等函数,对应输出不同的数据类型。_arg1,_arg2是形参,Sales是字段名称,[Sales]是实参

tips:可视化中可以添加预测字段(预测模型上传至tabpy-server,实时预测结果或模型分数等)

tableau连接mongodb

下载MongoDB BI连接器连接方式

数据看板发布以及共享

将工作簿发布到tableau online

Tableau 与Python 结合使用 tableau连接python_可视化_03


tableau添加用户或者建立用户群组,设置不同的角色:

  1. Creator :
  • 在浏览器中建立新的数据连接
  • 上传工作簿(.twb 和 .twbx 文件)
  • 从浏览器或 Tableau Desktop中构建和发布数据源及工作簿
  • 使用仪表板起始模板
  • Explorer 和 Viewer(查看者)可执行的所有其他操作
  1. Explorer:
  • 连接到站点上的已发布数据源来创建新工作簿
  • 编辑和分析已发布工作簿中的数据(“保存”和“另存为”选项因权限而异)
  • 创建数据通知和自定义视图、下载内容(选项因权限而异)
  • Viewer(查看者)可执行的所有操作
    用户级别“Explorer(可发布)”是一种 Explorer,该用户可将新内容从 Desktop 发布到站点,并依据现有的已发布数据源创建和发布新内容,但无法连接到外部数据或创建新数据源。
  1. Viewer:
  • 查看其他人创建的已发布视图和自定义视图
  • 使用筛选器和图例、排序以及工具提示浏览视图中的数据
  • 共享内容、为内容添加注释以及下载内容(选项因权限而异)