如何用excel制作中国地图热力数据图
2024-09-04 广告
1.第一步是在创建热图之前准备矢量地图。以中国的行政地图为例。每个省的行政区划地图可以单独编辑。
2,然后确保Excel在启用之前已启用宏,并添加“开发工具”菜单。 “开发工具”菜单可以添加为:“文件” - “选项” - “自定义功能区” - 主选项卡 - 选中“开发工具”。
3.添加完成后,返回Excel页面,菜单栏中将出现“开发工具”菜单。
4.然后创建一个临时存储各种类型数据的单元格区域。请注意,您应该包含三个值:区域名称,与区域对应的数据结果以及与该区域对应的颜色。您可以选择任何空单元格来放置它。
5.接下来,通过选择适当的区域或单元格重命名每个区域或单元格,然后重命名它。例如,选择$ J $ 3单元格,然后在名称框中键入“Actreg”,然后按Enter键。此时,您可以重命名以下所有区域。
6,然后是第一个单元格,名为:Actreg,用于临时存储“当前区域”拼音名称,第二个单元格命名为:ActregValue,用于临时存储“当前区域”指示值。
7.接下来,需要分别设置$ J $ 4单元格和$ J $ 5单元格的公式,如下所示:
$ $Ĵ4:= VLOOKUP(ACTREG,REGDATA,2,0)
8.然后必须在“开发工具”菜单中插入“按钮”,注意在地图上方插入一个按钮。
9,然后选择按钮,并双击,这次打开Visual Basic编辑器,并输入以下代码:
Private Sub CommandButton1_Click()
对于i = 4到34
范围(“ActReg”)。值=范围(“sheet1!b”&i).Value
ActiveSheet.Shapes(范围( “ACTREG”)。值)。选择
Selection.ShapeRange.Fill.ForeColor.RGB = Range(Range(“ActRegCode”)。Value).Interior.Color
10.最后保存并关闭VBA编辑器,返回Excel界面,只需单击按钮,即可根据每个区域的值范围填充地图,以完成相应的颜色。
1、首先第一步在制作热力地图前,这时候需要准备好一幅矢量地图,以中国行政地图为例,需要每个省份的行政区划地图都可以被单独编辑。
2、然后就是在制作前请确保你的Excel已经启用宏,并添加了“开发工具”菜单。“开发工具”菜单的添加方式为:“文件”——“选项”——“自定义功能区”——主选项卡——勾选“开发工具”即可。
3、接着进行添加完成后回到Excel页面,菜单栏中就会出现“开发工具”菜单。
4、然后要建立临时存放各类数据的单元格区域,注意的是要包括三个值:区域名、区域对应的数据结果,以及区域对应的颜色。可以选定任意空单元格进行放置即可。
5、接着就是对各区域或单元格进行重命名,即选择相应的区域或单元格然后对其进行重命名。例如选择$J$3单元格,再来名称框中输入“Actreg”并回车,这时候就可以将以下区域全部重命名。
6、然后将第一个单元格,命名为:Actreg,用于临时存放“当前区域”的拼音名,还有就是第二个单元格命名为:ActregValue,用于临时存放“当前区域”的指标值。
7、接着就是要对分别对$J$4单元格和$J$5单元格设置公式如下:
$J$4:=VLOOKUP(Actreg,RegData,2,0)
8、然后就是要在“开发工具”菜单选择插入“按钮”,注意在地图上方插入一个按钮。
9、接着就是进行选择按钮,并双击,这时候要打开Visual Basic编辑器,并输以下代码:
Private Sub CommandButton1_Click()
For i = 4 To 34
Range("ActReg").Value = Range("sheet1!b" & i).Value
ActiveSheet.Shapes(Range("ActReg").Value).Select
Selection.ShapeRange.Fill.ForeColor.RGB =Range(Range("ActRegCode").Value).Interior.Color
Next i
End Sub
10、最后进行保存并关闭VBA编辑器,回到Excel界面,只需要点击按钮,地图就可以根据各区域值的范围填充相对应的颜色了就完成了。
-------------------------------------
作图思路:我们为每个区域准备一个自选图形,按照其数值大小,根据分档阀值、颜色图例,对自选图形填充以相应的颜色,完成一个热力地图。
地图图形的准备
首先,在网上找到一个矢量格式的地图文件。所谓矢量格式,是使用直线和曲线来描述图形,这些图形的元素是一些点、线、矩形、多边形、圆和弧线等等,其文件后缀名一般为.WMF、.AI、.EPS、.CDR等。Excel可以读取.WMF格式的文件,其他格式的一般需要专门的软件打开。导入Excel后,该地图可以打散为一个个的自选图形,每个自选图形对应一个区域。
如果你要做比较小的地区的数据地图,譬如武汉市分为江汉区、武昌区等,网上可能无法找到相应的矢量地图,这时我们可以自行绘制。
● 找到一个当地的地图图片,一般JPG格式的地图还是很好找的,导入Excel。
● 在放大视图下,使用绘图工具栏->自选图形->线条->自由曲线,按照地图轮廓进行勾描,每个区勾描成一个封闭小块,最后形成一个全市分区的自选图形地图。这个细活需要花一点功夫,但一次完成长期使用,还是值得的。
地图模型的构建
有了地图图形后,我们开始制作地图的引擎模型。
假设我们的数据源如下,例子文件中D列数据为各省2008年GDP总值。
1、为自选图形命名。
我们用每个省的拼音字母为其图形命名。如选中湖北省的图形,在左上角的名称框中输入湖北的拼音名hubei,回车,则这个图形被命名为hubei,后面会用这个名称来引用这个图形。逐一完成所有区域图形的命名。
很多公司需要按大区进行分析,如华东区、华南区等等,这时我们可以将某几个省的图形组合起来之后再命名。这时候你的数据源也要按华东区、华南区等进行组织。简言之,将大区作为一个区。
2、设置数据分档阀值和图例。
假设我们要把各省GDP数据分为5个层级进行分档填色,在I列设置填色样式,J列填入文字标签,注意I8:J12区域在后面将被拍照引用为图例。在L列设置分档阀值,填入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处,要导出地图时,只需要复制这个拍照对象就可以了。
模型的使用
至此,一个层析填色型的热力地图工具就完成了。需要使用的时候,我们只需要3个步骤:
● 填入你的数据;
● 设置分档阀值和填充图例;
● 按下填色按钮,生成热力地图。
是不是非常惬意?呵呵,我们也可以象咨询顾问一样制作数据地图了,穷人的地图可一点也不差哟。
有的朋友可能希望在地图上增加区域名、指标值,可以通过在各省图形上添加文字,或绘制文本框,然后将其链接到相应的单元格。但一般建议不必添加,地图上少放些内容,会显得更加清晰。另外,如需增加分档层级,可根据以上过程,自行修改相应参数来扩展层级。
以上说明仍使用之前日志《Excel版中国数据地图工具 》中的例子文件,请至该日志下载参考。
(本文由ExcelPro的图表博客原创,转载请注明出处。ExcelPro的图表博客探索最专业的商务图表沟通之道,用Excel制作杂志级的商业图表,让普通人士也能极具专业精神。欢迎交流讨论!)
这个我看过N遍了,没懂。
就第一步,把矢量图导入到EXCEL中就不行了,网上的矢量图大都是.cdr .ai的,导入EXCEL中根本显示不出来。