Tableau 自定义图形联动筛选
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tableau 自定义图形联动筛选相关的知识,希望对你有一定的参考价值。
参考技术A如上图所示,点击不同的icon显示不同数据。
3列:2个维度【type of tree】【Year】+1个度量【Number of trees sold】
左轴: 【type of tree】用颜色区分
右轴: 【Year】用图形区分(导入自定义图形方法见 Tableau | 属于自己的调色盘和图标库 )
轴设置: 双轴的时候,选择 同步轴 ,然后度量值上右键选择 隐藏标题
将2个图表位置放置完毕后(为了更好地图形化表达,增加了符合主题的图片)
仪表盘-->操作-->添加操作-->筛选器(下图所示可以理解为:图表2内容控制图表1)
帝国CMS7.5实现地区三级联动并且前台可地区筛选的教程
今天再分享一款 三级联动代码,同样可以自定义数据,并且附上前台根据三级地区筛选的功能示例代码:
第一步:后台添加三个数据表字段
字段名:pro 字段标识:省 输入表单替换html代码:
<select name="pro"></select>
字段名:city 字段标识:市 输入表单替换html代码:
<select name="city"></select>
字段名:area 字段标识:区域 输入表单替换html代码:
<select name="area"></select>
第二步:建立完毕后,在到 管理系统模型修改生成相应的表单!
三个字段设为 提交项 可添加 修改 列表显示 ;结合项
第三步:打开e/admin/AddNews.php 把以下代码粘贴到结尾的随便位置即可
<script type="text/javascript" src="selects.js"></script> <script type="text/javascript" src="data_china.js"></script> <script type="text/javascript"> var s = selects; //获取对象 var p = document.getElementsByName(‘pro‘)[0];//省 var c = document.getElementsByName(‘city‘)[0];//市 var a = document.getElementsByName(‘area‘)[0];//区 //绑定数据 s.bind(p,province); s.bind(c,city); s.bind(a,area); //确定从属关系 s.parent(p,c); s.parent(c,a); //设置默认值 s.selected(p,{value:‘<?=$ecmsfirstpost==1?"":htmlspecialchars(stripSlashes($r[pro]))?>‘}); s.selected(c,{value:‘<?=$ecmsfirstpost==1?"":htmlspecialchars(stripSlashes($r[city]))?>‘}); s.selected(a,{value:‘<?=$ecmsfirstpost==1?"":htmlspecialchars(stripSlashes($r[area]))?>‘}); </script>
第四步:下载附件两个JS上传到e/admin/ JS为UTF-8编码,其他请自己转码
到此后台已经实现添加内容三级联动
在前台显示位置添加一下代码可筛选查,注意两个JS路径
<script type="text/javascript" src="[!--news.url--]js/selects.js"></script> <script type="text/javascript" src="[!--news.url--]js/data_china.js"></script> <form method="get" action="[!--news.url--]e/action/ListInfo.php"> <input value="10" type="hidden" name="mid"> <input value="17" type="hidden" name="classid"> <input value="1" type="hidden" name="ph"> <input value="12" type="hidden" name="tempid"> <select name="pro"></select> <select name="city"></select> <select name="area"></select> <INPUT value="确定" type="submit" name="提交"> </FORM> <script type="text/javascript"> var s = selects; //获取对象 var p = document.getElementsByName(‘pro‘)[0];//省 var c = document.getElementsByName(‘city‘)[0];//市 var a = document.getElementsByName(‘area‘)[0];//区 //绑定数据 s.bind(p,province); s.bind(c,city); s.bind(a,area); //确定从属关系 s.parent(p,c); s.parent(c,a); //设置默认值 s.selected(p,{value:‘<?=$ecmsfirstpost==1?"":htmlspecialchars(stripSlashes($r[pro]))?>‘}); s.selected(c,{value:‘<?=$ecmsfirstpost==1?"":htmlspecialchars(stripSlashes($r[city]))?>‘}); s.selected(a,{value:‘<?=$ecmsfirstpost==1?"":htmlspecialchars(stripSlashes($r[area]))?>‘}); </script>
注:四个默认字段mid是模型ID,classid是栏目ID,tempid是列表所使用的模板标签ID,ph是结合项,ph参数是必须等于1的,表示使用结合项,否则不能筛选
JS代码下载:下载
以上是关于Tableau 自定义图形联动筛选的主要内容,如果未能解决你的问题,请参考以下文章
Tableau Desktop 企业日常问题25Tableau 如何实现自定义控件排序?
Tableau Server 企业日常问题 25如何自定义 Tableau Server 登录页面背景
Tableau Server 企业日常问题 25如何自定义 Tableau Server 登录页面背景