点图元

阅读(2399) 标签: 点图元,

我们在坐标 中,介绍了集算器中使用的各类坐标轴。在定义了坐标轴后,就可以在它们构建的坐标系中绘制所需图元了。在这里,我们将从最简单的点图元开始,了解如何在指定的位置绘制图形。

点图元及其数据属性

点形图是最基本的图元之一,仅由一个逻辑坐标点即可定位;当逻辑坐标使用序列时,可以绘制多个点。

下面的画法绘制的是部分城市人口的散点图:

 

A

1

=canvas()

2

=demo.query("select NAME,POPULATION from STATES where STATEID<6")

3

=A1.plot("BackGround")

4

=A1.plot("EnumAxis","name":"x","allowRegions":false)

5

=A1.plot("NumericAxis","name":"y","location":2,"autoCalcValueRange": false,"maxValue":5.0E7,"format":"#,###.##","transform":1,"scale":1000.0)

6

=A1.plot("Dot","axis1":"x","data1":A2.(NAME),"axis2":"y","data2": A2.(POPULATION))

7

=A1.draw@p(450,250)

A1中建立画布,A2中取出绘图数据如下:

A3中绘制白色背景,A4中绘制枚举轴x作为横轴,A5中绘制数值轴y作为纵轴。

A6中绘制点图元,这也是我们在这里关注的图元。

A7中绘图结果如下:

可以看到,在默认情况下,绘制的点为自动设定颜色的圆点。下面我们以这个画法为例,了解点形图的各种绘图属性,并初步认识常见图元的一些共有属性。

 

图元的数据属性,就是绘制图元的位置坐标。对于点形图,只需要一个坐标点,即一组坐标,即可确定位置。在设定常用图元的数据坐标时,需要选定两个逻辑坐标轴,并分别设定逻辑坐标的属性值或者表达式。选择的两个逻辑坐标轴没有顺序要求,但需要相互匹配,如横轴匹配纵轴,或者极轴匹配角轴。

在这里,设定的逻辑坐标A2.(NAME) A2.(POPULATION) 均为序列,表明有多组逻辑坐标,此时将绘制多个点。

点图元的外观属性

在绘制点形图时,可以设定点的形状、颜色、边线等属性,如,修改前面的画法,编辑A6中的绘图属性,设置点形图的外观属性如下:

设定Marker style为菱形,Line color改为浅蓝色,Marker weight增大为6个像素,并将点的Fill color改为渐进的粉红色。修改设定后,绘图如下:

从图中可以看到,点的外观按照设定发生了改变。使用Marker weight属性可以设定绘制的点半径的像素数。如果需要点的尺寸与逻辑值对应,那么可以设定Radius 1Radius 2属性,它们分别对应数据属性中设定的逻辑轴Axis 1Axis 2,将由设定的逻辑值分别计算出点的宽度和高度。

当需要使每个点的外观各不相同时,需要将绘图参数设为序列。如继续修改A6中的绘图属性,修改点的颜色属性如下:

此时A7中的绘图结果如下:

当使用序列属性时,如果属性序列的长度较小,在绘图时将循环使用。

点图元的文字标注

在绘制点形图时,有时需要在点旁用文字作出标注,此时可以在点形图的属性编辑中编辑文字相关属性,例如修改上一小节中的统计图,设定点形图的文字属性如下:

设定Text为人口数,并选择了Text font,设定了Text sizeText color,绘图如下:

标注文字将按设定的外观,在坐标点的上方显示。

图元的一些共有属性

常用图元有一些共有的属性,如是否可见、透明度等等,我们通过点形图的绘制初步了解这些属性,继续编辑A6中的绘图属性,修改散点图的画法:

修改图元的透明度Transparency0.5,并勾选Shadow,绘图结果如下:

可以看到,Transparency的修改使绘制的点变淡透明,Shadow设定后可在图形右下产生淡淡的阴影效果。此外,如果将可视设为false,图元将隐藏不绘制;Allow text overlapping和集算器图形之轴图元中提到过的轴标签的允许重叠属性类似,如果选择为false,那么在绘制一组图元时,如果其中某个图元和已绘制的图元有重叠部分,那么将跳过不绘制。