高维时空房地产数据的可视分析论文
房地产数据是典型的时空高维数据,包含了楼展趋势.可视化分析房地产数据能直观、有效、交互盘的地理分布、楼盘价格和销售量等其他未知的发式地展示数据,帮助用户发现和分析这些已知的和未知的趋势,具有重要的科学研究和应用前景.本文首先研究数据的地理位置、空间位置及其他属性的聚类算法,并将这些算法集成到地学可视化组件、堆栈图组件、像素条图组件以及树图组件中,各个组件实现不同的可视化功能;然后将这些组件集成在一个基于HTML5开发的可视化分析系统中,实现了各个可视化组件的相互协同操作.本文的可视分析方法可揭示房地产市场的发展,以及房价、销售数量、时间、文化和政策之间的关系.
1相关工作
地学可视化通过人们的感知理解与地理信息进行“交流”,并实现数据探索和决策分析,近20年来,Takatsuka等开发了GeoVISTAStudio可视分析环境,其允许用户快速地建立自定义的可视化应用组件,用于分析空间数据;在此基础上,Hardisty等提出了GeoViz开发包,使用基于组件协同的方式来辅助可视化应用程序的创建.
近年来,很多时序数据可视化新技术不断地被提出并得到发展.Havre等提出的主题河(ThemeRiver)用于可视化文档中随着时间变迁的主题变化;Byron等发展了用于可视化多个时间序列的堆栈图,并更注重于可视化设计中的几何特性和美感;Keim等提出了像素条图,其无需数据的聚集就可以可视化大规模多维时序数据;Ziegler等集成了像素条图用于可视化金融时序数据.由于房地产数据的销售情况是离散分布的,因此本文提出了新非等长的时序数据聚类方法和可视化展现形式.
在网络应用程序方面,目前浏览器本地支持的绘图逭染技术有SVG,HTML5的Canvas元素绘图和WebGL等.当前的在线可视化应用有Spotfire?,Manyeyes[7]等.Spotfire是一个比较全面的富含多种可视化方式的商业平台,可帮助用户创建自定义的可视化分析程序,但其所含的可视化组件相对比较传统,功能单一.Manyeyes站点提供多种多样的独立的交互式的可视化应用服务,但其是基于JavaApplet来实现各种数据的可视化,普及性不是很好.在用本文方法研发的系统(简称本文系统)中使用Canvas来创建各个可视化组件,使用WebGL缓存各个组件的可视化结果来加速可视化的绘制和用户交互.
在类似的在线房地产数据可视分析方面,Tableau公司?提供了在线的可自定义的房地产可视分析解决方案,但需要具有相对专业的知识才能使用;Search,ch公司③自动收集了瑞士各大售房网站上的广告并采用地图的形式展示出来,可实时地提供楼盘价格等,但其缺乏分析能力;Hotpads公司④同样提供了基于地图服务的楼盘销售与租赁信息,其用房屋图片的大小和形状表示不同楼盘的价格及其他属性等.
2可视化组件的设计
本文系统包括5个可视化组件:地学可视化组件(GeoMap),展示楼盘销售数量变化的堆栈图组件(StackedGraph),展示楼盘多维属性的像素条图组件(Pixel-bar),平行坐标组件(ParallelCoordinatorPlot)和展示数据层次结构的树图组件(Treemap).下面重点介绍本文开发的GeoMap,StackedGraph,Pixel-bar和Treemap4个组件.
2.1GeoMap
每个楼盘标记用地图上的一个圆点或者图标来表示,圆点的颜色和大小用于编码数据的不同维度,如图la所示,高销量楼盘标记覆盖在低销量楼盘标记的上面,且在地图上叠加了规划单元.图1b所示为用货币符号的大小表示楼盘价格不同的区间段.
由于在绘制过程中可能需要将数百个楼盘标记展示在一个小区域内,而直接在浏览器内绘制大量楼盘会降低运行性能,因此本文将地理位置相近的楼盘进行聚集以提高可视化效果.GoogleGeoAPI小组?提出了基于网格的聚类方法,首先将地图切分为固定大小的网格,网格的大小随着地图缩放比例的变化而自动更改;然后根据各楼盘的经纬度坐标将它们分配到各自的网格中.该方法在浏览器中执行速度快,但是存在一个显著的问题--地理位置相距很近的楼盘可能被分配到不同的网格中.另外一种方法,即传统的基于距离的聚类方法虽然解决了上述问题,但需要遍历所有的楼盘标记数次,在用户浏览器中执行速度并不理想.
本文提出一种改进的基于网格的聚类算法,步骤如下:
Stepl.如果存在未被聚类的标记,则选择之;否则,算法结束.
Step2.如果该标记位于某一聚类所代表的网格中,则将该标记添加至该聚类中,同时计算该网格中所有标记的几何中心作为该聚类的新聚类中心,转Stepl;否则,将该标记构造为一个新的聚类,聚类所代表的网格大小根据地图缩放比例自动设置,转Stepl.
该算法只需要遍历所有的楼盘标记点一次即可完成聚类,执行速度快,能够快速响应用户在浏览器中对地图进行缩放的操作,实时更新聚类,如图lc所示,其中的数字表示该聚类内楼盘的数目.
本文统计了每个聚类内所含楼盘的属性,并提出了一种新颖的可视化方式,用放置在聚类图标周围的圆弧表示不同的统计信息.如图lc所示,聚类图标左边的圆弧表示该聚类内楼盘的销售数量,圆弧的长度用于编码销量的多少;而右边的圆弧则用于表示聚类内楼盘的均价.
2.2StackedGraph2.2.1布局和排序
堆栈图有多种布局方式,如传统的堆栈图布局方式,ThemeRiver布局方式[3],StreamGraph布局方式[4]和最小摆动布局方式[4]等;以及多种不同的排序方式,如基于堆找图中各层开始时间点的排序,基于各层动荡性的排序和基于各层的数据总和大小的`排序等.
在堆栈图布局方式中,本文将楼盘销售时间序列转换成相对应的》个非负、可微且连续的函数/,,/2,…,A,值域转换为[0,1].定义堆栈图底部为基准函数g。,第;层&表示g。与时间序列函数的总和,定义为
排序方式.基于各层动荡性的排序方式,应将越动荡(即楼盘销量变化越明显)的层放置在图的外围用于避免堆栈图的整体变形,或放置在图的中央位置用于查看堆栈图的整体动荡情况.基于各层数值大小的排序方式,根据各层的数值总和进行从大到小或从小到大的排序.
不同布局和排序的组合可被适当地应用于房地产数据.本文根据房地产数据的特殊性,提出了堆栈
图的布局和排序方式的组合,使其更加适用于房地产数据的分析.如图2a所示的堆栈图使用StreamGraph布局和基于动荡性的排序方式展示了所有楼盘销售数量的动荡情况,可以看出,大部分销售数量高的楼盘所表示的层(颜色较深的层)分布在图的外围,且这些楼盘的销售数量随着时间变化比较剧烈.因此可以认为,楼盘销量与销售所持续的时间以及销量起伏的动荡程度存在一定的联系.
2.2.2文字标签
将表示各层属性的文字标签恰当地标注在堆栈图中的各层也是一个具有挑战性的问题.较好的设计方案能够使文字标签自适应各层的大小,各个文字标签在堆栈图中不会造成重叠且具有较好的视觉美感,而在堆栈图含有数百个层的情况下,仅仅用一张静态的堆栈图几乎不可能很好地达到这个目标.
本文将销售数量高的楼盘的标签直接绘制在图上,其余楼盘的标签随着用户选择某一层时自动弹出,如图2b所示.某一层文字标签的字体大小S=L/TXH,
其中,L表示该楼盘的销量总和,了表示图中所有楼盘的销量总和,H表示堆桟图显示区域的高度.当S小于某一阈值时,该标签将不会展示在图中?由于StreamGraph布局中的文字标签可以分布在基线的两侧以降低文字标签的重叠,因此提高了图的可读性.
2.3Pixel-bar
本文使用像素条图对楼盘的价格或销量数据进行可视化,观察单个楼盘的销售情况,并对可视化结果进行聚类.在图3a所示的像素条图中,每个像素条表示一个楼盘,每个像素条的横轴表示时间的跨度,每个时间点上的颜色表示该楼盘在该时间上的统计信息,如某一周(或月)内的平均价格或者销售数量总和.楼盘均价主要分布在10000?40000元之间,而销售数量分布较广,从几套直至上千套?为了避免颜色编码结果的单一性,本文对销售数量取对数操作.通过查看像素条图上的颜色分布,可以清楚地看到楼盘销售的时间区间以及房地产市场整体的销售情况和价格走势.
由于每个像素条的显示区域都只占用同样的高度,因此使用像素条图展示大量条目的数据可帮助节省显示空间,且布局更加整齐?但由于大量的像素条被绘制在图中容易导致用户感官上的混淆,本文针对房地产数据的特殊性,基于K-means聚类算法[7]对得到的大量像素条进行聚类-
首先,用户在地图上选择需要用像素条图进行可视化的楼盘,并设置聚类数目为然后,算法随机选择》个楼盘作为初始的聚类中心,迭代剩余所有楼盘,计算其与n个初始聚类中心的距离,该距离可定义为楼盘和聚类中心的平均价格差或者销售数量的差,并将距离最近的楼盘添加到该聚类中心;最后,计算聚类中心所含楼盘的价格平均值或销售数量平均值以更新聚类中心,重复以上迭代操作,直至聚类中心不再发生变化.
如图3a所示,每一聚类作为一列绘制在聚类后的像素条图中,聚类内的像素条基于价格从上到下降序排列.
由于上述方法仅仅局限于楼盘的单个属性,因此本文提出了一种同时基于楼盘价格和销量的聚类方法.由于不同楼盘的销售时间不同,且时间是离散或者持续的,因此本文首先根据楼盘的销售数量对楼盘进行分段,然后在各段中根据楼盘的价格进行排序.在楼盘分段过程中,首先计算每个楼盘的销售数量总和并升序排列,如图3b中折线图所示,并在该折线图上使用基于PIPs(perceptuallyimportantpoints)的分段方法M进行识别.图3b中,&(&,%)和P2,力)作为初始的2个PIPs,P3U3,y3)为离初始2个PIPs所连直线垂直距离最远的一个点.该垂直距离
通过同样的方法迭代被巧分割后的折线段可以得到剩余的PIPs,之后就得到了不同销售数量的楼盘类别.本文将每个楼盘类别作为一列绘制在图中,各列根据其平均销量从左到右升序放置;在各列中,本文根据楼盘均价对楼盘进行降序排列,如图3c所示.
2.3Treemap
本文结合Treemap展示数据的层次结构并揭示其所蕴含的空间信息,Treemap中的布局和排序方式决定了各节点在图中的排列方式,而这些排列方式决定着Treemap展现其所蕴含着的模式和规律的能力.本文根据房地产数据的特殊性,提出了如下布局方式和排序方式的组合,使其更加适用于房地产数据的分析.
图4a所本为含有2个层次的Treemap,其中使用了非常有助于排名类问题的有序正方化布局算法[?.该布局算法首先根据节点所表示数值的大小对节点进行降序排列,并沿着左上角到右下角的对角线将节点放置在图中.图4a中第一层次表示杭州的行政划分单元,嵌套其内的第二层次表示各个楼盘,其节点的面积大小和颜色用于编码楼盘的销售均价.
在有序正方化布局的基础上,本文直接使用表示楼盘地理位置的经纬度属性替代之前计算得到的二维位置,即空间有序布局[1°],其非常适合可视化包含空间信息的数据.如图4b所示,每个节点在树图中的位置尽量放置贴近于其所表示的楼盘在地图上的地理位置;每个节点面积相等,使得布局更加整齐且更有利于保留原有的地理位置信息;节点的颜色用于表示楼盘的价格或者销量.通过空间有序布局,可以解决保留在Treemap中原始数据的相关地理信息,提高用户对该类数据的感知能力.
当只考虑保留数据一维信息时,基于正方化布局的条带布局方式[11]比较适合.如图4c所示,其将节点从左到右或者从上到下进行排序,同一层次内节点的宽度(或高度)保持不变.该布局方式执行速度快,且能很好地保证树图顺序性和连贯可读性[I2].
3实验数据和系统实现
3.1实验数据
本文抓取了杭州房产信息网、杭州透明售房网、住在杭州网和杭州市规划局网站4个站点的杭州市房地产相关数据.使用本文系统涉及的数据包含了杭州市382个楼盘和超过40000条的销售数据,时间从2007-09-2011-11.-个楼盘的属性包括楼盘识别符、名字、坐标的经纬度、其所在的行政单元、规划单元、物业类型、开发商,以及楼盘每天的预订数量、交易数量、销售价格、楼盘总套数、总面积、住宅套数、住宅面积、开盘次数等.
3.2系统实现
本文系统服务器端使用J2EE实现,客户端基于HTML5开发,其可直接运行在任何兼容HTML5的浏览器内.该系统在Intel?Pentium?ProcessorE5300(2.66GHz),3GBRAM,NVIDIAGeForceG100GPU(512MBRAM)的计算机上进行测试,由于使用了WebGL技术,其能够在浏览器中快速地渲染可视化结果并进行交互.
本文针对各个组件设计了良好的交互操作,如组件的缩放操作、楼盘套索选择操作、用户偏好选择等;同时设计了一个颜色选择工具,帮助用户选择适当的颜色与组件进行交互.该颜色选择工具使用了ColorBrewer[13]颜色方案中的“定性颜色类别(qualitativecolorgroup),’?选定了某一颜色之后,用户可以使用该颜色框选出需要在其他可视化组件中高亮显示的楼盘,如图3c所示.
在系统实现开发上,任磊等[14]提出了基于交互式信息可视化界面模型以及开发方法Daisy,提供对层次、网络和多维等数据类型的统一支持.本文使用了基于组件的可视化模型,各个组件单独分离开来,采用统一的内部协调器将各个组件的广播事件和监听事件链接起来,实现协同可视化.本文系统概览如图5所7K,其中①?④分别对应GeoMap,StackedGraph,Pixel-bar和Treemap.各个可视化组件界面均可设置为半透明,从而避免视觉上各组件间的遮挡.
4案例分析
4.1对决策者的可用性分析
用户可以在本文系统中使用堆栈图来探索楼盘销量的模式与趋势,以发现一些宏观的模式,帮助决策者更好地理解此大数据集并做出相应的决策.
本文系统首先用楼盘套索选择所有的楼盘并进行分析,如图6a所示,此堆栈图采用了传统的堆栈图布局方式.通过仔细观察可以发现,如2008年金融危机导致的销售低谷,2008年底由于国家与地方政府出台的一系列房地产调控政策所带来的2009年房地产销售高潮,以及2011年国家与地方政府出台的限购令导致楼盘销售大幅下滑.
在分析了所有楼盘的堆栈图之后,本文进一步可视化了不同地区的楼盘销售情况,期待能够发现这些年城市的发展情况.
图6b展示了中央商务区和城西楼盘销售的堆栈图,图6c所示为杭州市东南方向的滨江区和北面的九堡等地区的楼盘销售堆栈图,杭州市东北方向的下沙区和城北地区的楼盘销售堆栈图如图6d所示.可以发现,图6b中楼盘销售时间集中在2008年和2009年,而在中央商务区外围以及沿着钱塘江的楼盘大部分在2009年被售出(如图6c所示),更外围的楼盘的大部分在2009年和2010年被售出.这些堆栈图帮助我们发现和验证这些年杭州市发展所存在的外扩趋势,而且主要往城市的东部和北部扩张.
4.2用户反馈和专家访问
我们将本文系统展示给10位有刚性需求的普通购房者、5位欲投资房地产的商人以及由7人组成的有专业知识的房地产研究小组,以期获得有价值的评论和建议.
反馈结果表明,普通用户和专家都认为本文系统提供的交互式、可协同的可视分析组件可以帮助他们快速地了解房地产的概况.购房者认为,Treemap的结合可以帮助他们很直观地看出当前楼盘在地图上所处的大概位置.除了对本文系统功能的评论外,他们建议可引人经济学中的房地产模型,如HedonicPriceModel等,以及引人更多的参考因素,如土地价格,来增强系统的综合分析能力.
5总结
本文提出了新的房地产信息可视化方法,研究了基于HTML5的在线可视分析方法,帮助普通用户和专家快速地感知数据特征以及从数据中发现有趣的“故事在这些组件中,本文提出了诸如基于楼盘地理位置的网格聚类方法、基于楼盘价格和销量的聚类方法等;同时,又根据房地产数据的特殊性提出了不同布局方式和排序方式的组合,使其更适用于房地产数据的分析.一些成熟的交互技术也被集成到本文方法所实现的系统中,来自普通用户和专家的反馈均认可了本文系统分析的准确性和有效性.
下一步,我们计划将其他城市的房地产数据添加到数据库中,并集成其他的金融信息、政策信息和新闻;同时,计划添加更多的交互式分析技术以增强系统的分析能力,并与现有的可视化组件互补.
【高维时空房地产数据的可视分析论文】相关文章:
基于旅游管理的时空数据模型研究论文08-14
高专护理课程改革分析论文09-03
房地产三维营销体系论文12-28
Hadoop物联网数据挖掘的算法分析论文01-05
公共大数据信息安全立法分析论文09-15
基于数据仓库的联机分析处理技术论文01-16
网络安全中的大数据技术分析论文12-01
高导热石墨膜的合成及其性能分析论文01-10
与临床医学数据挖掘分析相关论文09-02