新浪博客

我的郁闷经历:Excel散点图横坐标变成1,2,3..的原因

2009-05-23 16:03阅读:
本文主要目的是用于喂Google。

BTW: 部分转向果蝇和线虫的一些课题了,跟随老爷子;斑马鱼实在不适合做生物信息。



摘要:Excel绘制散点图x轴(横轴)坐标自动变成整数序列 1,2,3... 而不是选定范围内数据值的原因,是因为这些数据中有文本单元格(包括单元格的值为空字符串的情况)。
很土,差点惹了比较大的麻烦,写下来给大家当教训。
给别人的一个汇报,研究实验数据两两间线形相关度有多强和给出回归方程,给的数据都是>0的log2(原始值)结果,然后用0表示此点数据无效。于是用公式 =IF(A1>0,2^A1,'') 在新列生成数据,然后两个新列做散点图、画趋势线。粗粗一看得出结论:这两组呈线形相关、那两组线形无关……
然后被打回来强烈质疑:这在理论上说不通,几组数据应该是一致的;而且那个无关的也无关得太离谱了。数据点大小关系上窜下跳都要倒过来了。
仔细观察突然发现线形无关的那个散点图居然x轴坐标范围是从0到300,y坐标最大值则上万。折腾半天,确定了所有点x的取值就是1,2,3,...,250(这批数据恰好都是250个点,真是讽刺啊)。问题是那些线形相关的图偏偏一切正常,x和y都是0到几万,啥问题没有。
然后就是一天的折腾和研究:重新选x轴数据来源n次,新建图表m次,新建文件p次,换电脑q次;还有重要的一步就是把250行分r块绘制s次,居然有的正常有的不正常!只差实践那条名言若干次:“硬件:计算机可以用来踢的部分。”
最终问题的解决是昨天凌晨通过Google在某个小网站看到一句话:散点图的x轴数据来源不能有非数值格式,否则会自动变成连续编号。
顿悟,终于明白那些没问题的图表原来是不含无效数据的,也就是说通过上述公式计算后不会有值为空字符串的单元格(偏偏为了阅读等原因排版上它们内又插入了无数据的空行,看起来和值为 '' 的单元格同样一片空白,但是散点图是容许这些真正的“空单元格”的,进一步误导了我)。
解决
方案很简单了,选中那几个貌似空白的格子,狠狠按下Delete,世界瞬间恢复正常。
希望没有人再犯我的错误……

我的更多文章

下载客户端阅读体验更佳

APP专享