2.3 Excel图表缺陷及补救
Excel是个非常强大的软件,喜欢它的人甚至认为它无所不能。其图表设置选项也非常灵活,基本上可以实现你想要的各类效果。但也有几个地方,用起来不是那么顺手,也可以算是缺陷吧。事先了解这些缺陷及其解决办法,可以减少很多困惑。
反转条形图的分类次序
在Excel中制作条形图时,默认生成图表的条形顺序总是与数据源顺序相反,在大多数情况下,这并不是我们想要的效果。
这时需要在分类轴的格式设置框中,勾选“分类次序反转”选项,才可以让条形的顺序反过来,与数据源顺序保持一致,如图2-21所示。这个操作很简单,但条形图是应用非常多的图表类型,每次都要这样做就很繁琐。Excel为什么不能让条形图的默认顺序就与数据源保持一致呢?
图2-21 需要反转分类次序,才能让条形图的顺序与数据源保持一致
让曲线图从Y轴开始
在Excel中制作曲线图时,默认生成图表的曲线总是从X轴的两个刻度线之间开始,致使前后都留下半个刻度线的空间。而专业的商业曲线图,曲线一般都是始于绘图区左侧(即Y轴),止于绘图区右侧,每个数据点均落在刻度线上。如图2-22所示。
图2-22 曲线图的起点从Y轴处开始会显得更专业,而不是前后都留下一段空间
修改设置的方法也很简单,在X轴的坐标轴格式设置中,取消勾选“数值(Y)轴置于分类之间”选项,即出现图2-22中右边的效果。请参见图2-21中的对话框。
以上两个小问题,如果Excel能自动设置好,就可以节省我们很多时间了。
设置图表的互补色
在做柱形图或条形图时,如果有负数的情况,我们可能希望对正数使用一种颜色表示正增长,对负数使用另外一种颜色表示负增长。可能大家都知道,这时可以在数据系列格式的图案设置中勾选“以互补色代替负值”实现。如图2-23所示。
图2-23 以互补色代表负值
所谓互补色,按照一般人的理解,如果对正数填充为某个颜色,Excel应该自动对负数填充为相应的互补色。但Excel却不是这样理解的,无论你如何调整正数的填充色,那个负数的填充色始终都是白色的,无法修改。所以很多人只好将源数据分离为正数和负数两个系列后再作图,然后对这两个系列分别设置填充色。
其实,要想将柱形图或条形图的负数设置为指定的互补色,还是有一种办法可以直接设置实现,而不必借助辅助数据。具体做法如下。
1.用含负数的源数据作柱形图或条形图。
2.选中数据系列,在其格式设置中勾选“以互补色代表负数”,确定。这时图表的负数是白色的。如果你尝试修改填充色,这个白色并不会跟随改变。
3.还是在数据系列格式中,选择“图案→填充效果→渐变→双色→颜色2”,这个颜色2就将是我们图表的互补色,设置其为红色,确定。如图2-24所示。
图2-24 利用数据系列的双色填充
4.回到数据系列格式,继续确定。这时图表变成了双色渐变的填充效果,还不是我们想要的结果。
5.再次进入数据系列格式,设置填充色为绿色,确定。这时再看图表,渐变的效果已消失,正数的颜色是刚才选择的绿色,负数的颜色就是那个颜色2(红色),实现了我们想要的效果。如图2-25所示的效果。
图2-25 使用图表的互补色选项来反映正负数
如果你继续改变图表的填充色,那个互补色还是不变化。令人费解的是,既然是互补色,为何不跟随主色变化呢?不过,这个方法仅适用于Excel 2003,2007版本已不再支持。
解开散点图的困惑
散点图常用来表现分布和相关性,看一组变量的x、y之间是否存在相关性,也常用来制作象限图、矩阵图等。用Excel制作散点图存在两个缺陷问题,令很多人困惑不已,即使在Excel 2007中也还没有解决,我们无法知道微软是怎么考虑的。
散点图数据源的选择
做散点图的时候,选择数据源的方式与其他图表不一样,这是需要注意的。
作图2-26,我们必须仅选择x、y值所在的C~D列,而不能包含分类名称所在的B列,然后点击图表按钮,才会顺利出现想要的散点图。如果你包含了分类名称列,则无论数据源使用在行或在列方式,都不会出现你想要的散点图样子。
图2-26 使用XY chart labels为散点图添加数据标签
散点图的数据标签
一般我们希望散点图的数据标志显示为各数据点对应的名称,但在“数据标志”里的几个选项,无论如何设置均无法实现这种效果,这是个严重的缺陷。所以很多人只好手动标上文字,不胜其烦。
解决办法1 手动链接
如果数据点不是很多,我们可以手动链接标签。先设置显示数据标志为系列名称,这时每个数据标签都显示为一样的值,如“系列1”。然后选中其中一个标签(如公司1的),然后将鼠标光标定位到公式栏,输入=,再用鼠标点击对应数据点的标签名字的单元格(如B3),按回车键,公式栏会变成:=Sheet1! $B$3,则这个数据标签被链接到B3,显示为B3中的值。逐一对其他数据点进行类似处理即可。
解决办法2 使用标签修改工具
不过,我强烈建议大家使用一个名叫XY Chart Labeler的标签修改工具,可以到下面的地址免费下载这个工具:
http://www.appspro.com/Utilities/ChartLabeler.htm。
XY Chart Labeler的主要用途是为散点图添加数据标签,显然是微软的缺陷导致了这个工具的产生。安装这个工具后,在Excel的“工具”菜单下会出现一个XY Chart Labels的子菜单,包含3个选项:
● Add XY Chart Labels :为数据系列添加数据标签,可以指定为任意位置的数据;
● Move XY Chart Labels :精确微移数据标签的位置;
● Manual Labeler:手动指定数据标签,包括输入固定的文本。
最常用的就是第一个功能。如图2-26,我们先选中散点图的数据系列,然后点击菜单“工具→XY Chart Labels → Add XY Chart Labels ”,出现Add Labels的对话框,在Select a Label Range输入框中用鼠标指定想引用的单元格位置B列,确认后,每个数据点旁就出现了B列的公司名,操作非常方便。范例
这个小插件为我们制作图表提供了极大的方便,我们可以用它为任意图表的任意系列指定任意的标签,有很多巧妙的应用,是经常制作图表的数据分析人士必备之利器。
多系列的散点图
如果我们要制作包含两组或两组以上xy数据系列的散点图,你会发现并不能像制作多系列的柱形图一样选中多组数据然后一次做到。你需要先完成一组xy数据的散点图,然后通过图表的源数据对话框,逐一添加另外的xy数据系列。这些数据是独立的数据系列,所以可以分别进行格式化。
带象限的散点图
散点图经常要做成有4个象限的样子,以对各数据点所处的位置分别进行评判。
方法1 可以通过在X和Y坐标轴的格式中设置刻度交叉于指定的刻度,可使X、Y轴相交在图表的中间位置。
方法2 用辅助数据的误差线来绘制象限。因为我们经常会用平均水平作为原点,参照评判各公司的位置,所以这个辅助数据往往就是各数据点的平均值。范例
如图2-27,在完成散点图后,先固定好X、Y轴刻度的最大值和最小值,然后将C11:D11作为辅助数据添加到图表中,并为其添加误差线X和Y,在误差量的自定义框里随意输入一个超过坐标轴最大刻度的值(例图中如100),误差线X和Y就正好把绘图区划分成了4个象限。这个方法的好处是,这个交叉原点可以用鼠标任意拽动(前提是C11:D11不是公式),很方便地调整原点位置。
图2-27 用辅助系列的误差线绘制分隔象限的坐标
方法3 用绘图区的填充图片来绘制象限。范例
如果需要制4个象限分别填充不同颜色的矩阵图,可以绘制4个正方形,填充不同的颜色,形成一个矩阵,截图保存为图片。然后将这个图片填充到散点图的绘图区。如图2-28所示。
图2-28 绘制一个有4个色块的图片,填充到图表的绘图区,成为4个象限
方法4 用辅助的堆积柱形图绘制象限并填色,做法稍微复杂,如图2-29所示。范例
图2-29 象限的填色来源于辅助系列所绘制的堆积柱形图
1.首先用蓝框中的辅助数据制作一个堆积柱形图,通过设置分类间距、填充色使之成为4个象限的样子。
2.通过分别勾选X、Y轴格式中的“…交叉于最大分类值”的选项,将坐标轴移到绘图区的上侧和右侧。这是关键技巧,目的是为了给真正数据要用的坐标轴留下位置。
3.然后将真正的数据加入图表,设置为散点图,置于次坐标轴;在图表选项中唤出次X轴,在常规坐标轴位置出现我们需要的坐标轴。再进行一些格式化,就可以达到图中的象限图样式。这里只做简单介绍,有兴趣的朋友请参阅范例文件仔细研究。