这几天做东西,总是遇到三维数据展示的问题,郁闷得我头都大,第一个是在做GIS的图表展示的时候,遇到的是在各个政区中,展示关于各统计指标项目的数量图.第二个是查询出其中的各政区上企业的业务审核通过,为不通过,以及审核中,暂存,重新采集五种状态,其中还遇到关联表,而且有些政区上面是没有其中的五种状态的数据,这样还是要以0来显示.刚开始的时候看到这个业务头都大了。后来分析了一下感觉不难,然后开始写sql,通过对状态的分组,政区的分组关联等等,才写完,写完的数据是以各种状态有一行记录的形式,而且有些状态没有企业就没有数据, 感觉写得很烂,但心想也不致于统计不出来, 画不出图吧。以是开始写java代码,后来才发现,不管是怎么写,并不是想像的那样,可以通过一些逻辑处理就得处理得过来的,发现走不下去了。以是没有办法,重写sql。终于,通过 sum + case的方法,把五种状态都显示在一条记录中,并且通过右外连接的形式把所有的政区显示出来了, 不管有没有企业的政区。这样就好办多了, 以后来做成fusionchart就好办多了。
select t2.*, t1.* from
(select t.street ,count(*) as sum
,sum(case t.state when 'y' then 1 else 0 end) as sumy
,sum(case t.state when 'n' then 1 else 0 end) as sumn
,sum(case t.state when '0' then 1 else 0 end) as sum0
,sum(case t.state when '1' then 1 else 0 end) as sum1
,sum(case t.state when '2' then 1 else 0 end) as sum2
from C_YGDW_CAIJI t group by t.street) t1 --, --t1里面查的是各状态的企业数量,以及街道id
RIGHT JOIN --右外连接
(select d.deptid as deptid,d.displayname as deptname
from buffalo_org_departments d
where d.deptid in (select t.memberid
from buffalo_org_groupmembers t
where t.groupid = '5')
--and d.deptid in (14,15,26) 这里是添加街道ID的地方
) t2 --这里查的是所有部门的id 和部门名称
ON t1.street = to_char(t2.deptid) --这里通过部门ID 和街道ID 来进行 做右外连接
java代码中处理如下:
FCTitle.append("<?xml version='1.0' encoding=\'UTF-8\'?><chart palette='0' baseFont='宋体' baseFontSize='12' caption='各街乡数据采集、审核情况统计' xaxisName='街乡名称' yAxisName='采集到的企业数量' useRoundEdges='1' shownames='1' showvalues='0' showSum='1' legendBorderAlpha='0' formatNumberScale='0'>");
StringBuffer categories= new StringBuffer().append("<categories>");
StringBuffer dataset_1= new StringBuffer().append("<dataset seriesname='未审核' color='8BBA00'>");
StringBuffer dataset_Y= new StringBuffer().append("<dataset seriesname='审核通过' color='A66EDD' >");
StringBuffer dataset_N= new StringBuffer().append("<dataset seriesname='审核不通过' color='F984A1'>");
String sum1="";
String sumY="";
String sumN="";
while(rs.next()){
sum1=rs.getString("sum1");
sumY=rs.getString("sumy");
sumN=rs.getString("sumn");
sum1=sum1==null?"0":sum1;
sumY=sumY==null?"0":sumY;
sumN=sumN==null?"0":sumN;
categories.append("<category label='"+rs.getString("deptname")+"' />");
dataset_1.append("<set value='"+sum1+"' link='javascript:entinfo(1,"+rs.getString("deptid")+")'/>");
dataset_Y.append("<set value='"+sumY+"' link='javascript:entinfo(2,"+rs.getString("deptid")+")'/>");
dataset_N.append("<set value='"+sumN+"' link='javascript:entinfo(3,"+rs.getString("deptid")+")'/>");
}
categories.append("</categories>");
dataset_1.append("</dataset>");
dataset_Y.append("</dataset>");
dataset_N.append("</dataset>");
FCTitle.append(categories).append(dataset_1).append(dataset_Y).append(dataset_N);
FCTitle.append("</chart>");
显示效果如下图:
分享到:
相关推荐
1.版本:matlab2019a,不会运行可私信 2.领域:【数据聚类】 3.内容:基于k-means聚类算法实现三维数据分类含Matlab源码 4.适合人群:本科,硕士等教研学习使用
本标准定义了一种开放式可扩展的空间三维模型数据格式———Spatial3DModel( S3M),适用于空 间三维模型数据的传输、交换与共享,有助于解决多源空间三维模型数据在不同终端(移动设备、浏览 器、桌面电脑)地理...
在 MATLAB 中,三维数组是一种特殊的矩阵,它是由一系列具有相同数据类型的三维矩阵组成的。三维数组可以用来存储和处理大量的三维数据,并且可以方便地进行矩阵运算和计算。 三维数组的解释如下: 三维数组是由一...
已知三列数据,用MATLAB画三维曲线图或者曲面图,很多初学者总是报错,甚至画不出来,这个代码通用性很强,如果数据本事没有残缺或者GUG,都可以用这个数据画三维曲面图,或者三维曲线图
三维线性插值segy数据,插值后的数据写成segy数据
三维数据场可视化
实现anyCAD开发工具对三维点数据的显示,并实现简单画图功能,能够绘制圆形矩形三角形以及特殊的图形(需要导入图形的点数据,这里涉及到图形STL文件的层切,不做赘述)
在进行数据处理时,常常用到将二维线数据集转换为三维线数据集,本范例示范如何利用二维线数据集和DEM数据集生成三维线数据集,并将三维线添加至场景。
1基本概念 1.1模型 1.2数据模型 1.3空间数据模型 1.4三维空间数据模型 1.5三维空间数据模型与三维空间数据结构的区别 三维空间数据模型与数据结构全文共28页,当前为第3页。 1.2数据模型(Data Model) 数据模型是...
三维数据的主要来源及其特点 1、三维数据的重要性 2、谈了三维数据的两个层面 3、几种常见的三维数据来源 4、几种常见的应用场景下的数据来源选择
三维分析中,需要导入三维模型数据(BIM/obj/OSGB),此范例示范如何导入三维数据和加载三维数据。
1.领域:matlab,三维点云数据的滤波算法 2.内容:【含操作视频】基于matlab的三维点云数据的滤波处理,得到干净的目标点云数据 输出三维点云滤波前后的目标点云图像。 3.用处:用于三维点云数据的滤波算法编程...
调试通过可以使用,仿真图是速度、距离、幅度三维图像,用MATLAB实现动态聚类或迭代自组织数据分析。
本文在地质条件相近的条件下,采用数理统计中的区间估计方法,将三维地震勘探的煤层底板标高数据与煤层开采后实际量测的底板标高数据进行统计与对比分析,计算所测数据相应的置信度与置信区间。通过统计分析定量的计算...
在大数据量条件下,实时动态显示三维曲面较困难,其关键在于提高三维图形数据处理和图形绘制速度。通过对基于图形工业标准OpenGL实现三维曲面动态显 示的原理和方法的讨论,提出采用OpenGL的双缓存、显示列表技术,...
当前10i版本的iServer已经开始支持对三维的点、线、面以及模型进行更新操作(注:10i版本之前不支持,仅支持二维矢量数据更新),WebGL目前还没有直接的接口对接三维矢量及模型数据更新,但是可以通过对 features 资源...
长沙建筑shpfile数据(含楼层),可用于城市规划,三维可视化分析 长沙建筑shpfile数据(含楼层),可用于城市规划,三维可视化分析 长沙建筑shpfile数据(含楼层),可用于城市规划,三维可视化分析 长沙建筑...
三维数据拟合直线-fit_line.m 现有一组三维数据,要求拟合成一条直线,并求出直线的方程。数据存放在一个txt的文件里。请高手帮忙
stl模型数据在三维场景渲染显示stl模型数据在三维场景渲染显示stl模型数据在三维场景渲染显示stl模型数据在三维场景渲染显示stl模型数据在三维场景渲染显示stl模型数据在三维场景渲染显示stl模型数据在三维场景渲染...
基于三维kemeas算法的三维点云数据聚类matlab仿真+代码操作视频 1.领域:matlab,基于三维kemeas算法的三维点云数据聚类算法 2.内容:基于三维kemeas算法的三维点云数据聚类matlab仿真+代码操作视频 3.用处:...