故事是这样的,有个客户提到一个作图需求,他是用在论文中的,挺简单的一个柱形图,但是他有一点不会做,就是如何把纵坐标变成罗马数字,或者叫拉丁数字(不是我们常见的阿拉伯数字哦)。
示例图如下:
sample
开始的时候我是抗拒的,觉得这样的要求有点矫情,因为在我看来,信息传达怎么简单怎么来,把想展示的内容和表达的意思弄清楚就好了——把阿拉伯数字换成罗马数字没这个必要!
后来经沟通,我了解到,在某些方案评估或者技术统计的时候,有特定的评价体系或者划分区间,罗马数字看起来比较直观。
恩,这么一说,似乎有几分道理。好吧,“满足客户的要求是第一要务”,咱们就来想想办法看要如何实现。
数据如下:
Data
上面的是源数据,下面的是转化后的作图数据(因为Excel本身并不能直接识别罗马数字来作图)
步骤:
普通柱形图
这里我有个大胆的想法,就是用文本框代替——即将柱形图的纵坐标轴标签隐藏,然后人为的添加6个罗马标签上去。
有网友可能要说了,这特么也可以?当然可以啊。
图表大神刘万祥老师在他的著作《图表之道》里面有说“利用一切元素”说的就是这个理。
只要我们最后眼睛看上去的是一样的不就OK了么?很简单的一个数据,有的人为了追求不一样的效果,研究作图技能,花了大量的时间,得不偿失。
任我说破了嘴皮,有的人还是觉得这个做法很low啊,有没有别的办法?就是用图表本身的技术实现它?你还别说,真有。
我们要借助辅助数据。
x值都为0.5,Y值递增,表示在横坐标轴的左边添加一条垂直线(请自行脑补)。
辅助数据
这时候,很多人犯难了,我如何添加辅助数据使之单独区别于原有柱形图而做散点图呢?
13及16版本的excel操作很方便,10及以下的就不是那么方便了。
很简单,我们先随便添加一个系列
添加系列
然后从活动选项卡里进去找刚才的X辅助系列,选中后然后再更改图表为【连线散点图】,再进去选择数据源里面更改x系列的X和Y值即可。
这里X跟其他系列一样都是在主坐标轴上,不用单独放,因为0.5和1、2、3属于性质相同的数据。
散点图
经过此番设置后,已经可以看到雏形了。
调整标签值,最小刻度为0,最大刻度为样本数据最大值加一级即可,刻度间距为1,标签显示设置下面都选择无,然后坐标轴线条颜色选择无线条即可
坐标轴设置
对辅助系列调出数据标签(我们就是用其模拟纵坐标轴的刻度样子,想要高大上的同学,是不是做到这里就觉得还是插入文本框来的简单啊,哈哈),对其设置格式,marker选择如下特殊格式,可以模拟出坐标轴的区间标记
marker设置
设置线条颜色,标记颜色,及标记点粗细,最后的效果如下,图例里面我们删掉多余的X即可(连续点2下即可单选)
去掉辅助图例
这里就偷不了懒了,可以单独选中某个标签,在编辑栏输入=号,再引用对用的罗马数字即可(罗马数字可以由阿拉伯数字公式生成=ROMAN(?),roman为函数)。
当然这里你还是可以选择手动更改,类似于修改文本框,但是我通常建议用=引用,因为有变化的话,你在单元格里修改数据,图会跟着变啊。
以前的文章里面就说到过,数据标签很多的话,这里可以上网找那种VBA编的插件,其实也就是自动的把刚才那动作做了。
修改标签显示
根据实际情况进行美化即可,比如你是用作毕业论文或者科学文献,有打印需求,彩色黑白打印可能辨识度不高,这时候我们可以设置系列填充为底纹,这是一种较好的处理技巧。
大功告成,累吧?呵呵
然而这都不算什么,刚才那种情况比较特殊,横坐标轴是数值的形式,那要是年份呢?
比如下面的图。
年份为横坐标轴
这时候我们如果重复刚才的步骤很可能做不成,因为Excel对年份是按照时间来识别的,跟散点图混在一起的话做不出来那个效果,或者说不能按照上面的步骤来。
怎么破?
替换横坐标标签值
X轴为1999,同时将辅助系列设置到次坐标轴。将次横坐标轴刻度调整为1999~2002,次纵坐标轴调整为0~6,同时隐藏次横、纵坐标轴以及主纵坐标轴,显示散点图标签值,跟第一种情况的方法类似进行设置,最后也能达到同样的目的。
借助次坐标轴
好了,今天的分享就到这里了,看似小小的问题,实际操作下来着实不简单,其中涉及很多的操作技巧,大家不妨有时间下去实操一下。
-----------------------------
联系客服