分享

扇区数自适应的南丁格尔玫瑰图

 雄鸡报晓777 2015-06-16

扇区数自适应的南丁格尔玫瑰图

文/ExcelPro的图表博客


    本来说不再折腾这个玫瑰图了,但在日志《南丁格尔玫瑰图》中,一位读者留言问道:

    “你好,我用了这个图表有一段时间了,可是现在遇到了一个问题,现在默认是12类内容,我现在需要13项内容,增加一项后,那一项的数据只显示出了数据标签,但是扇形面积怎么都显示不出来,是需要修改宏么?这块比较着急,请指教,十分感谢!”

    在该模板中,少于12个扇区的,只需将后面的数据填0即可。超过12个扇区的,需要修改扇区的起始角度,每扇区角度=360/扇区数。图表的数据源也要相应增加1列。

    对于初级读者自行调整可能有些困难,近日琢磨了一个简易的玫瑰图做法,可以自适应数据源行数变化扇区数。


1、准备数据源和模型如下图:

    B-C列为要用作玫瑰图来反映的数据源,F6为扇区数,用公式:=COUNTA(C6:C25)自动得出。这里为了演示方便,直接输入数字,并增加一个微调按钮来控制其数值,范围为1-20。

    F7为每个扇区的角度,=360/F6。

    H列为360个数据点的编号,I列为其落入的扇区编号,用公式:=CEILING(H6/$F$7,1)向上取整得出。

    J列为各数据点的取值,根据所落入扇区的编号获得,公式:=INDEX($C$6:$C$25,I6)。为了能区分扇区边界,增加一个判断,=IF(I6=I5,INDEX($C$6:$C$25,I6),0),即每个扇区的起始数据点取值为0,以绘制出一条到原点的边界线。


2、以J列为数据源制作一个面积型雷达图。

    去除数据标签和数值轴,即得到一个南丁格尔玫瑰图。

    现在通过微调按钮调整F6的数值,可以看到图表的扇区数会自动变化,非常方便。


3、为图表添加分类标签。

    为了给每个扇区加上分类标签文字,往图表中增加一个同样自适应变化的饼图,用饼图的分类标签作为玫瑰图的分类标签。

    将B-C列的数据加入图表(复制B6:C25-》选中图表-》选择性粘贴-》新建序列),更改其图表类型为饼图,设置显示数据标签为分类标签,即B列,位置在外。


4、让饼图及标签也可以自适应。

    这时饼图是固定的,并不能与玫瑰图一起自适应变化。需做些自动化设置。定义以下两个动态名称:

    标签1        =OFFSET(Sheet1!$A$6,0,0,Sheet1!$F$6,1)

    标签2        =OFFSET(Sheet1!$B$6,0,0,Sheet1!$F$6,1)

    将图表的饼图序列的数据源修改为:

    =SERIES(,单个序列做法.xls!标签2,单个序列做法.xls!标签1,2)

    现在再通过微调按钮调整F6的数值时,你会发现,玫瑰图扇区数、饼图扇区数、标签位置都自由自适应变化,非常智能。

    如果不是为演示方便,可将F6输入公式:=COUNTA(C6:C25),那会更加智能,C列的数据输入了多少行,玫瑰图就显示多少个扇区。


    本做法较为简易,特点是扇区数可以随数据源行数自适应变化,适用于制作单序列、扇区数不定的玫瑰图。但各扇区之间就不能用填色区别了,这是与前一日志的区别之处。

    有在工作中成功运用本博的系列玫瑰图模板制作玫瑰图的朋友,欢迎发来邮件与大家分享案例。


本例涉及知识点:数据准备的技巧,组合图表,定义名称


制作难度:★★★

实用性:★★★



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多