如何将智能家居系统与Tableau仪表板集成在一起

你有想过将智能家居和 tableau 结合么?tableau 爱好者 ann jackson 就在自己家中,尝试实现将智能家居系统与 tableau 仪表板集成在一起。根据灯光颜色非常“酷炫的”展示仪表板中的数据信息。想知道她如何脑洞大开?一起来看看!
ann jackson 曾在 twitter 上发布了一个视频,展示了如何将智能家居系统与 tableau 仪表板集成在一起。视频的内容就是三个灯泡的灯光颜色会随着仪表板中 kpi 结果的改变而动态变化。
她将照明设备连接到 tableau 仪表板的原因除了 “比较酷炫” 之外 —— 还有一些很实际的原因。使用类似灯光的东西能够轻松表示 kpi 或 ban ( big ass number ) 的状态,让用户迅速理解数据信息!
实现这种展现方式,需要哪些准备工作?
为了实现智能家居系统和 tableau 之间的集成,ann jackson使用了 python 。因为已经有人开发了库并将它们发布到 github 上共享,所以python 非常适合这种情况。另外一个原因是 tabpy,它允许您连接到 python 服务器并通过计算字段运行本地 python 代码。这些计算字段将在 tableau 工作表中作为表计算。一般来说,当您将 tableau 与 python 结合使用时,您会得到一个数字 / 字符串 / 布尔值。
当然,这不代表您不能拓展 tabpy 的功能,或者以其他方式来使用它。这正是这个项目的意义所在。因为这涉及到智能家居和她正在学习的python,而 tableau 是她的最爱。所以这个项目对 ann jackson 来说也是一个持续项目。
如果您想模仿 ann 所做的事,那么您需要一些硬件设备。比如飞利浦 hue 灯和配套的桥接器。理论上您可以使用其他智能家居部件。如果您不熟悉智能家居是什么 - 它基本上是通过桥接器向灯泡,给锁和恒温器等设备发出命令。它同时也是一种媒介,将您与智能家居系统(通常是移动应用程序)相连接,并将命令或程序转换为系统中的元素。具体到这个项目中,ann 使用 python 库与她的桥接器进行交互。她选用的库是 phue,这是一个 python 库,用于与 hue api 的交互。
智能家居系统和 tableau 集成步骤1下载并安装 phue 到 tabpy
首先她下载并安装了 phue 到 tableau - python - server(又称为 tabpy)。这样就可以通过 tableau 的 python 脚本调用库。在安装过程中,还运行了一个简单的脚本将库连接到我的桥接器 – 这是这一切工作的必要步骤。您必须建立起传输控件和灯具之间的连接。
2使用 python 进行测试和验证
接下来的部分就是输入代码,使用 python 进行测试和验证误差,以及体验 tableau 的乐趣。以下是最终计算出的结果:
利润率 kpi - 这是我们都熟悉的指标。我已经完成了基本的利润率计算,并根据参数进行了计算。计算结果将是 0 或 25000 。数字 0 和 25000 对应于灯泡的颜色输入。 0 是红色, 25000 是绿色。
这里是纯 python 的计算字段。在这种情况下,我实际上并没有使用 python 来压缩任何东西并返回结果,所以您会注意到返回参数是一个虚拟数字 1 。
3使用 script_int 函数
您将在 tableau 编辑器中的计算字段描述中看到它 - 要使用 script_int(或任何 script 函数),格式为:将代码放在引号中,任何输入或参数都使用 _arg1, _arg2, _argn 。这些参数用逗号隔开。在例子中有一个参数,[ profit ratio kpi ],它被分配给了一个代码。
代码基本步骤如下:
设置 [ profit ratio kpi ] 为 a
导入 phue 库,以便我们可以使用它
使用桥接器(我内部网络中服务器的 ip 地址)
将光的饱和度设置为 254 - 这是额外的代码,但这能确保光线具有全饱和度
将 light hue 设为 a 值
返回1 - 只是为了好玩!
在测试此代码时,打开 jupyter notebook,输入相同代码以在 tableau 之外的地方对其进行测试。在正常情况下,可以给 a 分配一个数,运行代码,并有灯光改变颜色。在 tableau 中,则必须调用参数的第一个变量 “ [ 0 ] ” 。因此,为了分离出想要的结果,必须在一个变量列表中指定想要的元素。所以 ann 的 kpi 结果实际上就像 python 符号中的[ 25000 ],被称为 _arg1 [0](non-python folk:python 的变量从 0 开始)。
从字面上看,所有事情都是在设置和构建 tableau 组件。构建 ban 并添加参数以动态输入目标变量。在输入正确的代码后,其他所有内容都将连接并正常工作。以下是其中一张 ban 工作表的样子:
计算字段未在视图中的任何其他位置使用。(如果您在默认的工具提示上悬停,结果会显示 “1”)。
一旦设置了可视化,只需要与仪表板交互此集成就开始生效。在 ann 发布的视频中,这个交互速度并不快。这是有原因的 - 从 tableau 开始接受计算参数,将其传送到 python 服务器,然后等待结果返回,这里需要一段时间。
ann 进行的尝试非常有借鉴意义,如果你也有相似的想法,不妨参考本文进行下实践,也许您也能制作出更 “酷炫” 的数据展现形式!这是一个非常简单的整合和演示,通过几行代码,数据驱动的表现就可以存在于物理世界中。这也是物联网的一种应用,如果你对物联网有着浓厚的兴趣,那还不快来参加本周四 tableau 举办的网络分享会!

2020年下半年苹果新iPhone将支援5G,高通与三星可能成为新iPhone 5G基频芯片供应商
日本Koizumi发表3系列共24款LED照明产品
Marvell推出业界首款双端口400GbE PHY,可确保加强点对点安全性
晶体管图示仪的设计与制作,Transistor characteristic exhibit instrument
人工智能的新突破将深度影响其他行业的发展
如何将智能家居系统与Tableau仪表板集成在一起
VOC在线监测系的应用有哪些
梅卡曼德位于北京昌平的自有新工厂正式投产
Java工程师怎样做好职业规划
多通道采集仪VS-BOX无线全自动采集站推出防爆款箱体防爆
安森美半导体完整时钟解决方案满足时钟市场更高要求
充电宝移动电源检测标准
可自由设计的3D打印LED灯 都是你心仪的款式
OLED应用场景尚未打开 LCD显示屏地位依旧稳固
口腔健康保卫专家,水牙线好用吗?
LED财政补贴7月初出台 过半LED企业倒闭
同步降压型稳压器LTC3541的性能特点及适用范围
CMOS源电阻及其对源极跟随器增益的影响
小米MIX4也将于9月发布,看来9月旗舰大战的规模将再度升级
平板电脑市场陷入颓势 联想却逆流而上销售增长100%!