美文网首页
Excel 图表中的射线技术(高阶)

Excel 图表中的射线技术(高阶)

作者: 刘万祥ExcelPro | 来源:发表于2017-08-18 09:52 被阅读0次

    最近有朋友看到了我们的物流地图,咨询如何在地图上绘制各省间合作关系的图,类似如下效果。

    在之前的帖子中,曾有多次用到在地图上绘制连线、射线的形式,来反映各省间迁徙、物流发运等关系,甚至有多个公司主体之间复杂债务关系的图,具体内容见当时的帖子。

    Excel制作中国迁徙数据地图

    在地图上分析供应链/销售/物流网络

    在地图上分析供应链物流网络-中国区版

    Excel物流地图分析模板 - 全球版

    三角债,理还乱?用“债务关系网络图”,DUANG的一下就清晰了!

    以上模型都是 Excel 知识和技巧的全面综合运用,难度较高,不过其中最主要的特征,就是这些连线和射线,今天我们拎出来单独介绍其绘制方法。

    你看到的这些连线、射线,其实是使用带联系的散点图来绘制的,你需要准备好连线起止点的经纬度数据,作为xy数据来绘制散点图。

    我们做个简单模型例子来讲解。如下图,选择某个省份,绘制从该省份到其他省份的射线连接。

    (射线技术简单模型讲解)

    首先你要找到各省省会城市的经纬度坐标,图中的F~H列是我找到的数据,另外找到一份中国地图图片作图底图。下面开始制作模型。

    1、制作起始点的选择器,并根据选择结果提取起始点的经纬度。

    B8 设置数据有效性,数据源为F列省名。用户选择后,C8、D8从 F~H 列 vlookup 提取其经纬度。

    2、准备射线散点图的数据源。

    射线有34条,那么射线起止点有68个,所以 J、K 列需要准备68行数据。注意J8的公式写法技巧:

    J8:=IF(MOD($I8,2),C$8,INDEX(G$8:G$41,$I8/2))

    复制到整个区域,即准备好了散点图的xy数据源,请仔细体会这里的原理。

    3、制作射线图。

    以J、K列数据插入带连线的散点图,就得到了射线图。

    射线可能需要有省份名称标签,我们先准备一个复选框供选择是否显示标签,选择结果在L6,L列的公式:

    L8:=IF($L$6,IF(MOD($I8,2),"",INDEX(F$8:F$41,$I8/2)),"")

    复制到底,就在终点数据点上准备了省份名称标签。散点图添加数据标签,指定为L列。勾选复选框,测试正确。

    4、完成射线和地图组合。

    把散点图设置透明,放置在地图底图上,调整大小和位置,使各终点基本和地图对齐,完成射线地图。选择起点省份、复选框,测试显示结果正确,完成。

    动态演示效果如下图:

    之所以说基本对齐,是因为地图投影关系,你找到的地图底图可能和散点图的终点不能刚好对齐,这也是本做法的缺点之一。

    以上是简单模型,解释其技术原理。在前面的例图里,都要复杂一些。

    1、物流地图需要画出箭头,那么每条线段要和下一条分开,在第2步准备数据时,需要在每对起止点数据间留空行,使线条断开。需要在线段上标出数字,那么需要另准备一组散点图了。发运终点有多有少,准备xy数据时需要根据情况来填充了。

    2、债务关系图里,它的xy坐标不是经纬度了,而是我们计算得出的这些公司在圆圈上分布的坐标了。债务关系有双向的,两个公司间可能要画两条线条,数据准备可以分开准备。

    当然,这些都属于复杂、高级的图表了,对 Excel 来说很有难度,目前有其他工具如各种网络图、ggplot等绘制起来会更容易。

    作为日常工作简易使用,像这样采用 Excel 来简易做一下,效果还不错,是可以的,如果是有专业要求的工作还是需要找专业工具来做。

    在微信公众号 iamExcelPro 回复 “射线”,下载范例文件动手练习。

    Excel  /  图表  /  数据  /  可视化

    尽在 Excel 图表之道,点击阅读原文立即学习

    相关文章

      网友评论

          本文标题:Excel 图表中的射线技术(高阶)

          本文链接:https://www.haomeiwen.com/subject/yiborxtx.html