返回目录:excel表格制作
是不是跑的时候设置没有区别开,我以前也碰到过类似的,忘记了。
由于需要的地图是比较简洁的地图,所以就选择百了openstreetmap的地图,这里使用谷度歌地图的规则进行下载(不同的地图规则需要转换内,谷歌地图规则最接近原始规则,所以容下载的地图一般都用谷歌地图规则进行下载)。
例子文件中D列数据为各省2008年GDP总值。
1、为自选图形命名。
用每个省的拼音字母为其图形命名。如选中湖北省的图形,在左上角的名称框中输入湖北的拼音名hubei,回车,则这个图形被命名为hubei,后面会用这个名称来引用这个图形。逐一完成所有区域图形的命名。
很多公司需要按大区进行分析,如华东区、华南区等等,这时可以将某几个省的图形组合起来之后再命名。这时候你的数据源也要按华东区、华南区等进行组织。简言之,将大区作为一个区。
2、设置数据分档阀值和图例。
假设要把各省GDP数据分为5个层级进行分档填色,在I列设置填色样式,J列填入文字标签,注意I8:J12区域在后面将被拍照引用为图例。在L列设置分档阀值,e79fa5e98193e58685e5aeb9337填入J列标签的下限,M列是为引用准备的名称。
注意在设置分档间距、颜色深浅时,二者应该呈线性比例变化。推荐颜色的的设置方式是使用同一色调的不同饱和度。当有负数时,可从一个色调渐变到另一个色调。
3、为模型定义名称和公式。
RegData
=Datamap!$C$8:$D$38
源数据区域
ActReg
=Datamap!$K$17
临时存放“当前区域”的拼音名,如hubei
ActRegValue
=Datamap!$K$18
临时存放“当前区域”的指标值,如8633
=VLOOKUP(ActReg,RegData,2,FALSE)
ActRegCode
=Datamap!$K$19
临时存放“当前区域”的颜色代码,如color4
=VLOOKUP(ActRegValue,L8:M12,2,TRUE)
color1
=Datamap!$I$8
填色代码1,指向I8
color2
=Datamap!$I$9
填色代码2,指向I9
color3
=Datamap!$I$10
填色代码3,指向I10
color4
=Datamap!$I$11
填色代码4,指向I11
color5
=Datamap!$I$12
填色代码5,指向I12
4、制作填色按钮。
绘制一个按钮,为其指定如下宏代码。
―――――――――――――――――――――――
For i = 8 To 38 '为数据源的起始和结束行号,根据区域的多少来定
Range("ActReg").Value = Range("datamap!C" & i).Value
’将C列的拼音名填入“当前区域”,即K17
ActiveSheet.Shapes(Range("ActReg").Value).Select
’选中“当前区域”对应的图形
Selection.ShapeRange.Fill.ForeColor.RGB =
Range(Range("ActRegCode").Value).Interior.Color
’将选中的图形填充以“当前区域”的颜色代码所指向的单元格的填充样式
Next i
―――――――――――――――――――――――
如代码中的注释所说明,这段宏对每一个区域,将其拼音名填入K17,(这时K18会根据K17的拼音名,查找返回相应的指标值;K19又会根据K18的指标值,查找返回相应的颜色代码),然后宏把颜色代码作为名称所指向的单元格的填充样式复制到当前区域的图形进行填充。
5、点击按钮,当宏循环完成,每个区域的图形就被根据其数值大小,填充了相应的颜色。
将I8:J12拍照引用到地图左下角,作为图例。为方便复制引用,再将地图所在的AO10:AT30拍照引用到Q10处,要导出地图时,只需要复制这个拍照对象就可以了。
在Excel中选中要做热图的全部数据 (不要选择行列标题!),然后执行以下操作:逗条件格式地--逗色阶地--逗其他规则地
默认是逗双色刻度地,可改成逗三色刻度地
然后设置最小值、中间值、最大值的类型和颜色
建议将类型都改为逗数字地,好处是可以自定义最小值、中间值、最大值的数值大小。然后用windows自带的截图工具(截屏也可以)截取逗预览地后面的色条。
注意:你的数据应该在设置的最小值和最大值范围之内。例图中7a64e59b9ee7ad94366的数据范围是0.3~9.84,因此这里设置最小值0,最大值10,中间值采用0和10的中位数5
将截取的色条粘贴到Excel中,效果如图。
如果觉得色条太长,可以作如下调整:
选中色条,提高Excel的缩放比例,直到能看到色条短边上的小方块,鼠标移动到小方块上,调节色条宽度
在色条上方的对应单元格内输入主要刻度值。
为了美观,可将Excel单元格的填充色都改为白色,并适当调节行高、列高。
到这里,热图基本上就做好了。
觉得数字碍眼看Excel似乎没有透明字体,那就试试Adobe Illustrator吧
复制Excel中的热图,在Illustrator中新建一个空白文档,粘贴。如果粘贴的内容超过了空白文档的边界,请重新新建一个大一点的文档吧。
然后Ctrl+A全选,右键--取消编组
保持全选状态,右键--释放剪切蒙板,然后就可以选择单个的文字了。
删掉热图中所有的数字,然后保存为pdf等格式的文档,用Acrobat打开pdf可另存为图片格式,大功告成!