FusionMaps地图XML文档详解
最近在用FusionMaps来制作地图。FusionMaps是通过XML配置文档来设置表现形式,包括颜色,字体等。也是通过XML配置文档设置FusionMaps的一些功能。
一个标准的XML文档:
<map animation='0' showShadow='0' showBevel='0' showLabels='0' showMarkerLabels='1' fillColor='F1f1f1'borderColor='CCCCCC' baseFont='Verdana' baseFontSize='10' markerBorderColor='000000' markerBgColor='FF5904'markerRadius='6' legendPosition='bottom' useHoverColor='0' showToolTip='0' showMarkerToolTip='1' > <data> <entity id='NA' /> <entity id='SA' /> <entity id='EU' /> <entity id='AS' /> <entity id='AF' /> <entity id='AU' /> </data> <markers> <definition> <marker id='CA' x='116.65' y='94.85' label='Sales Office' labelPos='top'/> <marker id='US' x='131.57' y='133.22' label='Headquarters' labelPos='bottom'/> <marker id='CN' x='532.3' y='150.68' label='Call Center' labelPos='bottom'/> <marker id='BR' x='228.55' y='276.03' label='Production Center' labelPos='bottom'/> <marker id='AU' x='621.83' y='311.21' label='Q & A' labelPos='bottom'/> <marker id='RU' x='532.3' y='76.73' label='Back Office' labelPos='bottom'/> <marker id='IN' x='499.26' y='202.5' label='Accounts' labelPos='bottom'/> </definition> <shapes> <shape id='USMap' type='image' url='Resources/us_flag.jpg' labelPadding='12' /> <shape id='CAMap' type='image' url='Resources/canada_flag.jpg' labelPadding='12' /> <shape id='CNMap' type='image' url='Resources/china_flag.jpg' labelPadding='12' /> <shape id='BRMap' type='image' url='Resources/brazil_flag.jpg' labelPadding='12' /> <shape id='AUMap' type='image' url='Resources/aus_flag.jpg' labelPadding='12' /> <shape id='RUMap' type='image' url='Resources/rus_flag.jpg' labelPadding='12' /> <shape id='INMap' type='image' url='Resources/ind_flag.jpg' labelPadding='12' /> </shapes> <application> <marker id='CA' shapeId='CAMap' toolText='Canada<BR>2 Managers<BR>11 Staff'/> <marker id='US' shapeId='USMap' toolText='United States<BR>CEO, CFO, 3 Managers<BR>26 Staff'/> <marker id='CN' shapeId='CNMap' toolText='China<BR>1 Manager<BR>7 Support Staff'/> <marker id='BR' shapeId='BRMap' toolText='Brazil<BR>COO, 2 Managers<BR>32 Factory Staff'/> <marker id='AU' shapeId='AUMap' toolText='Australia<BR>1 Manager<BR>(Outsourced Agency)'/> <marker id='RU' shapeId='RUMap' toolText='Russia<BR>1 Manager<BR>6 Staff'/> <marker id='IN' shapeId='INMap' toolText='India<BR>1 Manager<BR>5 Accountants'/> </application> </markers> <styles> <definition> <style name='TTipFont' type='font' isHTML='1' color='FFFFFF' bgColor='666666' size='11'/> <style name='HTMLFont' type='font' color='333333' borderColor='CCCCCC' bgColor='FFFFFF'/> <style name='myShadow' type='Shadow' distance='1'/> </definition> <application> <apply toObject='MARKERS' styles='myShadow' /> <apply toObject='MARKERLABELS' styles='HTMLFont,myShadow' /> <apply toObject='TOOLTIP' styles='TTipFont' /> </application> </styles></map> |
一、<map>元素的功能性属性:
| Attribute Name | Type | Range | Description |
| animation | Boolean | 0/1 | 是否让地图支持动态效果,默认的动画为淡入。 设置0为否,1为是。 |
| showLabels | Boolean | 0/1 | 是否显示实体的labels。 |
| includeNameInLabels | Boolean | 0/1 | 是否在labels中显示实体名称。 |
| includeValueInLabels | Boolean | 0/1 | 是否在labels中显示实体的值。 |
| useSNameInLabels | Boolean | 0/1 | 是否在labels活实体名称中用简写来表示。 |
| useSNameInToolTip | Boolean | 0/1 | 是否在提示文本中用简写来表示。 |
| showShadow | Boolean | 0/1 | 是否显示地图阴影。 |
| showBevel | Boolean | 0/1 | 是否显示3D地图。 |
| clickURL | String | 整个地图可以作为一个热点,指向一个URL,链接必须符合FusionMaps的格式。 | |
| defaultAnimation | Boolean | 0/1 | 地图默认的是有淡入的效果。如果你想通过STYLE功能来自定义动画效果,你可以将次此值设为0。 |
| hoverOnEmpty | Boolean | 0/1 | 当XML中没有设置了某个实体的值,是否让其在提示信息显示出来。 |
| showPrintMenuItem | Boolean | 0/1 | 是否显示”Print Chart” 按钮。默认为1。 |
| exposeHoverEvent | Boolean | 0/1 | 当鼠标移到一实体上时,是否激发Javascript事件或者Flash事件。 |
| showAboutMenuItem | Boolean | 0/1 | 是否右键后显示about信息。在这里可以设置你的公司名或者链接。默认的about信息是”About FusionMaps ” 。 |
| aboutMenuItemLabel | String | about信息上的文本。 | |
| aboutMenuItemLink | String | URL | about信息上的文本连接。 |
二、<map>元素的外观性属性:
| Attribute Name | Type | Range | Description |
| showCanvasBorder | Boolean | 1/0 | 是否显示实体的边框。 |
| canvasBorderColor | Color | Hex Code | 实体边框的颜色。 |
| canvasBorderThickness | Number | In Pixels | 实体边框的粗细。 |
| canvasBorderAlpha | Number | 0-100 | 实体边框的透明度。 |
| bgColor | Color | 设置整个地图的背景颜色。 | |
| bgAlpha | Number | 0-100 | 设置整个地图的背景透明度。 |
| bgRatio | Number | 0-100 | 设置整个地图的背景颜色比率。 |
| bgAngle | Number | 0-360 | 设置整个地图的背景颜色角度。 |
| bgSWF | String | 可以用一个透明swf文件作为地图的背景。这个文件要与地图文件在同一个域中。 | |
| bgSWFAlpha | Number | 0-100 | 背景flash的透明度。 |
| logoURL | String | URL | 可以加载一个logo。这个图要与地图文件在同一个域中。 |
| logoPosition | String | TL, TR, BL, BR, CC | Logo的位置:TL – 左上,TR – 右上,BR – 右下,BL – 左下,CC – 中间 |
| logoAlpha | Number | 0-100 | Logo的透明度。 |
| logoScale | Number | 0-300 | Logo的比例大小。 |
| logoLink | String | URL | Logo指向的链接。 |
三、设置Map的数字格式,利用下面这些属性,可以控制以下功能:
1、数字逗号和小数点的格式; 2、数字前缀和后缀; 3、在哪一位四舍五入; 4、在哪一个数量级进行缩放; 5、自定义输入格式。
| Attribute Name | Type | Range | Description |
| formatNumber | Boolean | 0/1 | 配置是否启动数字格式。例如:当配置为1时,显示 40,000 ,配置为0时,显示 40000 。 |
| formatNumberScale | Boolean | 0/1 | 配置是否将数字转化为K (千) and M (百万)。例如: 配置为1, 1043 将转化为1.04K (小数点后两位). |
| defaultNumberScale | String | 数字默认的单位。在数字格式高级部分有更详细的介绍。 | |
| numberScaleUnit | String | 数字的单位。在数字格式高级部分有更详细的介绍。 | |
| numberScaleValue | String | Range of the various blocks that constitute the scale. For more details, please see Advanced Number Formatting section. | |
| numberPrefix | String | Character | 数字前缀 |
| numberSuffix | String | Character | 数字后缀 |
| decimalSeparator | String | Character | 设置一个小数点分隔符。 |
| thousandSeparator | String | Character | 设置一个千分隔符。 |
| inDecimalSeparator | String | Character | 设置不同的分隔符。 |
| inThousandSeparator | String | Character | 设置不同的分隔符。 |
| decimals | Number | 0-10 | 小数点的位数。 |
四、设置Map的字体属性:
| Attribute Name | Type | Range | Description |
| baseFont | String | Font Name | 设置字体。 |
| baseFontSize | Number | 0-72 | 字体大小。 |
| baseFontColor | Color | 字体颜色。 |
允许将地图保存为图片的属性 (在Map标签中)
| Attribute Name | Type | Range | Description |
| imageSave | Boolean | (0/1) | 是否支持图片保存功能。 |
| imageSaveURL | URL | 图片保存地址,应与地图文件同域。 | |
| imageSaveDialogColor | Color | 保存图片时候弹出的窗口颜色。 | |
| imageSaveDialogFontColor | Color | 保存图片时候弹出的窗口字体颜色。 |
五、书签属性(在map标签中),书签用来在地图上定义一个点,用来指向一个城市,屋子或者市场等。你可以通过一下的配置项来设置书签。
| Attribute Name | Type | Range | Description |
| markerFont | String | Font Name | 设置书签字体,在STYLES 中可以重写。 |
| markerFontSize | Number | 0-72 | 设置书签字体大小。 |
| markerFontColor | Color | 设置书签字体颜色。 | |
| showMarkerToolTip | Boolean | 0/1 | 是否显示提示书签的提示信息。 |
| showMarkerLabels | Boolean | 0/1 | 是否显示书签的信息。 |
| markerLabelPadding | Number | Pixels | 设置书签信息和图标之间的距离。也可以在后面为每个书签重写该值。 |
| markerBgColor | Color | 书签背景颜色。 | |
| markerBorderColor | Color | 书签边框颜色。 | |
| markerRadius | Number | Pixels | 书签的半径。 |
| markerConnThickness | Number | Pixels | 如果设置了连接线,这个属性用来设置连接线的粗细。 |
| markerConnColor | Color | 如果设置了连接线,这个属性用来设置连接线的颜色。 | |
| markerConnAlpha | Number | 0-100 | 如果设置了连接线,这个属性用来设置连接线的透明度。 |
| markerConnDashed | Boolean | 0/1 | 如果设置了连接线,这个属性用来设置连接线是否为虚线。 |
| markerConnDashLen | Number | Pixels | 如果设置了连接线为虚线,这个属性用来设置虚线的长短。 |
| markerConnDashGap | Number | Pixels | 如果设置了连接线为虚线,这个属性用来设置虚线间的长短。 |
六、提示信息(在map标签中)
| Attribute Name | Type | Range | Description |
| showToolTip | Boolean | 0/1 | 是否显示提示信息。 |
| toolTipBgColor | Color | 提示信息的背景颜色。 | |
| toolTipBorderColor | Color | 提示信息的边框颜色。 | |
| toolTipSepChar | String | 提示信息中,设置名称和值之间的分隔符。 | |
| showToolTipShadow | Boolean | 0/1 | 是否在提示信息中显示阴影。 |
地图的内边距和外边距(在map标签中)
| Attribute Name | Type | Range | Description |
| legendPadding | Number | In Pixels | 设置图例在右/下的内边距。 |
| mapLeftMargin | Number | In Pixels | 设置地图距离左边的距离。 |
| mapRightMargin | Number | In Pixels | 设置地图距离右边的距离。 |
| mapTopMargin | Number | In Pixels | 设置地图距离上边的距离。 |
| mapBottomMargin | Number | In Pixels | 设置地图距离下边的距离。 |
七、图例属性(在map标签中)
如果你定义了区域范围颜色,这些颜色块会出现在图例中。你可以将颜色块放在地图的下面或右边。
当然,利用下面的属性,可以设置自定义图例。
| Attribute Name | Type | Range | Description |
| showLegend | Boolean | 0/1 | 是否显示图例。 |
| legendCaption | String | 图例的标题 | |
| legendPosition | String | BOTTOM or RIGHT | 图例的位置,下面或右边。 |
| legendBgColor | Color | Hex Code | 图例的背景颜色。 |
| legendBgAlpha | Number | 0-100 | 图例的背景透明度。 |
| legendBorderColor | Color | Hex Code | 图例边框颜色。 |
| legendBorderThickness | Number | In Pixels | 图例边框粗细。 |
| legendBorderAlpha | Number | 0-100 | 图例边框透明度。 |
| legendShadow | Boolean | 0/1 | 是否显示图例阴影。 |
| legendAllowDrag | Boolean | 0/1 | 是否允许拖动图例。 |
| legendScrollBgColor | Color | Hex Code | 图例拉动框的背景颜色。 |
| legendScrollBarColor | Color | Hex Code | 图例拉动框的颜色。 |
| legendScrollBtnColor | Color | Hex Code | 图例拉动框的按钮颜色 |
| reverseLegend | Boolean | 0/1 | 是否颠倒图例的顺序。 |
八、<entity>实体属性(在每个单独的entity标签中)
| Attribute Name | Type | Range | Description |
| value | Number | 实体的值。 | |
| displayValue | String | 显示信息。 | |
| toolText | String | 提示信息。 | |
| color | Color | Hex Code | 实体颜色。 |
| alpha | Number | 0-100 | 透明度。 |
| link | String | 指向的连接,可以是一个窗口,弹出窗口,框架或者是Javascript函数。在“下钻地图”中有更详细的介绍。 | |
| font | String | 字体。 | |
| fontSize | String | 字体大小。 | |
| fontColor | Boolean | 0/1 | 字体颜色。 |
| fontBold | Boolean | 0/1 | 字体粗细。 |
| showLabel | Boolean | 0/1 |
是否显示标签信息。这个属性重写了<map>中的showLabels属性。 |

浙公网安备 33010602011771号