定位统计图表的几何定位与基础图表构建

2017-10-16 03:30乔俊军胡冯伟
地理信息世界 2017年5期
关键词:图元统计图表扇形

刘 凡,乔俊军,胡冯伟,2

(1.武汉大学 测绘学院,湖北 武汉 430079;2.浙江省测绘科学技术研究院,浙江 杭州 310012)

0 引 言

专题地图是一种着重表达一种或者几种制图要素的地图,是分析和展示自然要素、国民经济指标的一种重要手段[1]。专题地图的信息包含了空间分布相关的地理信息和专题统计信息,GIS软件可以很好的在地理底图上展示空间分布数据,而矢量绘图软件依靠其强大的美化设计功能可以通过图表、图片等形式更好地展示专题统计数据[2-4]。

专题地图中统计数据的可视化表达方法有3种:分级统计图法、分区统计图表法、定位统计图表法,本文主要讨论定位统计图表法,它是一种定位于地图要素分布范围内、以同类型的统计图表表示范围内地图要素数量、内部结构或周期性数量变化的方法。这种表示方法主要反映周期性现象的特征,如温度与降水量的年变化,潮汐的半月变化,相对湿度,沿河流线上各水文站的水文图表等。

目前,在专题地图中生成定位统计图表有两种方法,一是根据统计数据计算柱体的长度、扇形角度等,人工绘制,效率比较低下,并且容易出错。二是借助Excel软件的自动绘图功能生成图表,然后复制到制图软件中进行加工修改,过程比较繁琐,并且曲线变齿,不易修改;图表大小,不易控制,失去可比性。这两种方法都不利于统计图表的制作,也不适合统计数据的规模化处理,影响了定位统计地图的设计水平和制作效率[5]。为此,在深入分析统计图表的多维分类和定位模型基础上,本文以CorelDRAW作为实验平台,使用VBA编程语言进行二次开发,程序化地实现了直方图、柱状图、扇形图、饼状图和玫瑰图等多种定位统计图表的自动定位和构建,对提高定位统计地图的设计水平和制作效率具有现实意义。

1 图表类型与功能设计

1.1 图表类型

定位统计图表的图形和组合形式复杂多样,本文选取了直方图、柱状图、扇形图、饼状图、玫瑰图进行研究。

完整的统计图表由定位参数和绘图参数两部分构成,其中定位参数决定了图表的位置如下:

式中,F代表定位统计图表,F1代表定位参数,F2代表绘图参数。

定位统计图表根据坐标系分为三类。

1)一维极坐标系:如扇形图、环状图、饼状图和玫瑰图,绘图制图参数有扇形的颜色、方向和面积等。此类图表的定位参数表示如下:

式中,X、Y分别为圆心的横纵坐标值,R1、R2分别为基础椭圆的长半径和短半径,若是正圆则相等。

2)二维直角坐标系:如直方图、折线图、散点图等。绘图参数有矩形的宽度和高度、折线的线宽等。此类图表的定位参数表示如下:

式中,X、Y分别为坐标系左下角点在制图平面中的横纵坐标值,L1、L2分别为横轴、纵轴的长度。

3)三维直角坐标系:三维图表能够更加立体直观地表现统计数据,图表类型有圆柱图、方柱图等,绘图参数有图形单元的尺寸和排列方式等。此类定位统计图表的定位参数表示如下:

式中,X、Y分别为坐标系原点在制图平面中的横纵坐标值,L1、L2、L3分别为三条坐标轴的长度,α为制图平面中X轴与Y轴的夹角。

1.2 功能设计

用户对定位图元、定位类型、定位参数进行设置可以将图表定位在指定范围内;用户可以任意选择坐标轴的正方向,设置刻度间隔、起始刻度、终止刻度;扇形图、饼状图可以按用户设置的距离拉开,让数据更清晰地表现在统计地图上。

系统根据制图流程分为3个模块:数据读取模块、图表定位模块、图表构建模块。

系统通过读取Excel文件,允许用户自由选择表格和字段来确定参与绘图的统计数据。用户在制图软件中选取定位图元以后,通过设置定位模型和定位参数完成图表的定位,再按照图表类型设置合适的绘图参数,最后完成定位统计图表的构建,如图1所示。

图1 程序设计流程图Fig.1 Flow chart of program designing

2 图表几何定位

定位统计地图是用统计图表反映制图区域中某些点、线、面上现象的数量特征和变化的地图。根据图表的位置,定位统计图表可以分为图外定位和图内定位。图内定位侧重用图表中不同的视觉变量反映行政区域或者经济区域之间的指标差异,加强对比;图外定位用图表形式表现整个制图区域的整体统计指标。根据定位图元的几何类型,又可以分为典型(点)定位、均匀(线)定位和图外(面)定位。

定位统计图表自动绘制系统中,用户在制图软件中选取定位图元以后,在选择定位模型类型的点击事件中,程序通过Activeselection类返回选取的定位图元,然后根据定位模型计算定位参数[6-7]。

2.1 典型定位

典型定位,即最典型的点定位,常用于表现具体地理位置上的周期性现象,如水文站的水位、流速信息,气象站的风向、风速信息,城市的降水、温度信息。适用的图表类型有直方图、扇形图、饼状图和玫瑰图。

典型定位中,定位图元是一个零维度的点,程序读取定位图元的CenterX和CenterY函数值计算为定位参数。

对于具有二维直角坐标系的直方图、折线图,定位图元位于坐标系底边的中点,定位参数计算如下:

对于具有极坐标系的扇形图、饼状图和玫瑰图,定位参数计算如下:

式(5)、式(6)中,s为定位图元量,CenterX、CenterY分别为求图元外包矩形中心点横、纵坐标值的函数。

2.2 均匀定位

均匀定位选取制图区域上多个分布均匀的典型点位,如经纬线交点、坐标格网的交点,以此来反映周期性现象在整个制图区域上的分布和变化。均匀定位模型中以多条相交的曲线作为定位图元,图表的锚点分别配置在对应地理曲线交点上。适用的图表类型有直方图、扇形图、饼状图、风向玫瑰图和风速玫瑰图。

式中,φ为纬线和格网横线,λ为经线和格网纵线,f1、f2为求两条曲线交点的横、纵坐标值的函数。

均匀定位模型中,首先对定位图元中的曲线分类,按照SizeWidth和SizeHeight属性大小分为横线和纵线两组,按从上到下、从左到右顺序依次遍历两组图元,然后判断横线和纵线的外包矩形是否相交,外包矩形重叠才可能有交点;若图元的外包矩形相互重叠则使用修剪函数,遍历修剪后曲线的所有节点并用函数IsOnCurve判断节点是否在定位线上,若同时在横线和纵线上则该节点就是曲线的交点,流程图如图2所示。

图2 均匀定位流程图Fig.2 Flow chart of evenly location

2.3 图外定位

图外定位侧重于用图表形式表现制图区域的整体统计指标,根据邻区的大小、形状和位置来配置图表位置。适用的图表类型有直方图、折线图和柱状图。

图外定位模型中最常见的定位图元是四边形,对于具有二维坐标系的统计图,如直方图、折线图等,坐标系组成的四边形即与定位图元重合。

式中,s为定位图元,LeftX、BottomY分别为求图元左边缘的横坐标值、底部纵坐标值的函数,SizeWidth、SizeHeight分别为求图元外包矩形的长度和高度的函数。

三维直角坐标系只有X、Y轴组成的底面位于专题图平面上,所以定位图元与坐标系底面重合。坐标原点定位在定位图元左上角的折点,X、Y轴分别与平行四边的长边和短边重合,坐标系倾斜角取平行四边形最大的内角。

式中,s是定位图元,Ox、Oy分别为求四边形左上角点的横、纵坐标值的函数,XLength、YLength分别为求四边形长边、短边的函数,MaxAngle为求四边形最大内角的函数。

图外定位模型中,首判定定位图元的形状类型是否为曲线,若不是曲线则先转为曲线,然后遍历曲线的节点读取坐标值,计算定位参数。

3 基础图表构建

根据式(1),统计图表由定位参数和绘图参数两部分构成,几何定位模块已经确定了图表的定位参数,图表构建还需用户设置绘图参数才能完成。本文以5种常见的图表:直方图、柱状图、扇形图、饼状图、玫瑰图来阐述图表构建的具体过程。

3.1 直方图

直方图利用矩形图元的高度来描述单一指标,矩形的排列方式有平铺和累积两种。直方图的定位参数:坐标系左下角点的坐标值(X,Y),横纵轴长度L1和L2确定以后,用户需要设置绘图参数:起始刻度、终止刻度、刻度间隔、矩形宽度、组内排列方式、坐标轴方向、横坐标和数据的配置位置,若是平铺图还需设置组内间隔,主要绘制步骤如下:

1)计算X轴所在位置:若起始刻度和终止刻度均为正数时,从最小刻度处开始向上绘制矩形,X轴与最小刻度线重合;否则从零刻度处开始绘制矩形图元,X轴与零刻度线重合。

以Y轴正方向向上为例,X轴位置:

式中,Kmax为是终止刻度,Kmin为起始刻度,y0为X轴的纵坐标值,k0为X轴对应的刻度值。

2)坐标系绘制:直角坐标系由坐标轴和刻度线构成,根据计算的X轴位置和Y轴方向,绘制两条垂直的线段完成。然后计算刻度线的位置并绘制虚线,以Y轴正方向向上为例,第i条刻度线位置:

式中,K为刻度间隔。

3)计算矩形图元的锚点位置:以Y轴正方向向上为例,锚点位于矩形图元底部的中心。假设有m组数据,每组数据有n个指标,第i组第j个矩形图元的锚点坐标:

平铺:

累积:

式中,ai,k为第i组第k个数据,w为矩形宽度,v为组内间隔。

4)计算矩形图元的高度,第i组第j个矩形图元的高度:

以均匀定位为例,选取经纬线作为定位图元,图表依次配置在经纬线交点处,实验结果如图3所示。

图3 直方图Fig.3 Histogram

3.2 柱状图

相比直方图,柱状图的定位参数增加了坐标系倾斜角,即X轴与Y轴的夹角。柱状图的基础图元有圆柱和方柱两种,圆柱需设置底部椭圆的长短半径,方柱需设置底部四边形的长度。绘制步骤与二维直方图相似,仅图元的锚点坐标计算不同,公式如下:

平铺:

累积:

式中,r1为圆柱底部椭圆的长半径,为方柱底部四边形的长,v为组内圆柱或方柱间的距离,ai,k为第i组第j个数据,α为X轴与Y轴的夹角。

以图外定位为例,选取平行四边形作为定位图元,实验结果如图4所示。

图4 柱状图Fig.4 Bar chart

3.3 扇形图

扇形图用正圆表示全部数据,以各个扇形的面积大小代表各部分占总数的百分比。扇形图既能对比各部分之间的差异,也能反映局部与整体的关系。扇形图只能表示一个数据系列,不能同时表示多系列数据。

1)首先对制图数据的占比进行统计,若有n组数据,第j个数据aj占总数的比例:

2)从12点钟方向起,按顺时针方向,计算每个扇形图元的起始角度和终止角度:

式中,αj、βj分别为第j个扇形图元的起始角度和终止角度。

以典型定位为例,选取湖北省内的气象站点作为定位图元,具体结果如图5所示。

3.4 饼状图

饼状图是扇形图的立体化表达,制图参数增加了饼高这一参数。图表构建过程中,图形单元由正圆的扇形变成椭圆扇形,然后进行立体化。图元构建完成以后还需对顺序进行调整。由于是按照数据排列顺序进行构建,终止角度在270°至360°的图元会对终止角度在180°至270°的图元产生压盖,造成视觉逻辑错误。为避免错误压盖,图元构建完成以后对所有终止角度在180°至360°的图元进行逆序排列,并将终止角度在0°至180°的图元调整到该图层顶部。以典型定位为例,选取湖北省内气象站点作为定位图元,具体结果如图6所示。

图6 饼状图Fig.6 Pie chart

3.5 玫瑰图

玫瑰图是依据某地一段时间内的气象统计资料,在极坐标系上绘制风向、风速的平均分布状况,在风能资源评价、气候与环境评估、化学仓库及核电站选址、机场建设、城市规划设计、高层建筑物设计等领域应用广泛。一般多用8个或者16个罗盘方位表示,各个风向上的线段长短表示从外部吹向该风向的频率大小或者风速大小[8-9]。

风有三要素:风向、风频、风速,玫瑰图按其所表达的要素,分为风向玫瑰图、风速玫瑰图和风频风速玫瑰图3种[10-11]。表达各风向出现频率的统计图,就是风向玫瑰图;表达各风向上平均风速、最大风速或最小风速的统计图,就是风速玫瑰图;若将各个方向上风频的线段按不同风速出现的频率绘制成不同颜色的分线段,表示出各风向上的不同风速出现的频率,此类复合统计图是风频风速玫瑰图。由于风频风速玫瑰图构建过程包括了前两种的主要计算过程,所以本文主要介绍风频风速玫瑰图的构建过程。

1)坐标系绘制:玫瑰图的坐标系由半径不等的同心圆构成,由小到大同心圆的半径计算如下:

式中:c为同心圆个数,R为最大圆半径,r为最小圆半径。

2)根据各个风向的频率大小,按相应的比例计算其线段长度:

式中,ai,0为i方向上的风向频率。

3)假设有m个方向上n级风速的数据,根据各个风向上的各级风速出现的次数,第i个风向上的j级风速对应的线段长度:

式中,ai,k为i方向上k级风速出现的次数。

4)各级风速的频率以不同颜色的扇区表示,扇区是以同圆心角的小扇形对大扇形修剪得到曲线,计算扇区的半径和角度:

式中,ri,j、Ri,j分别为第i个方向上第j个扇区的内半径和外半径,αj、βj分别为扇区的起始角度和终止角度。

以典型定位为例,选取湖北省各气象站点作为定位图元,具体结果如图7所示。

图7 风频风速玫瑰图Fig.7 Rose chart of wind frequency and speed

4 结束语

本文从理论、技术、应用3个层面对定位统计图表的多维定位与自动构建进行了探究。在理论研究层面,归纳和总结了定位统计图表的数学模型;从坐标系这一角度对定位统计图表进行了多维分类;从统计图表的定位方法中抽象出定位图元的几何类型。在技术实现层面,详尽地阐述了定位统计地图的数据读取模块、图表定位模块、图表构建模块的功能作用和制图设计过程,程序化地实现了统计图表的定位和自动构建。在实际应用层面,极大地方便了用户对定位统计地图的设计要求,提高了定位统计图表的设计水平和制作效率。

猜你喜欢
图元统计图表扇形
一种组态控件技术在电力监控系统中的运用
各种各样的扇形
学术出版物插图的编排要求(一):图注
联锁表自动生成软件的设计与实现
艺术跨学科之美——基于第五届中国中小学生统计图表设计活动的思考
2019年1-5月全国商用车市场销售统计图表
2019年1-4月全国商用车市场销售统计图表
探源拓思融会贯通
———《扇形的认识》教学廖
复扇形指标集上的分布混沌
基于Qt绘图系统的图形应用优化研究与实现