四时宝库

程序员的知识宝库

你做的多组散点图是不是丢失信息了!?

高颜值免费在线绘图 imageGP有个散点图工具,很好用。

假设有下面一组差异基因数据(基因的名字列没有展示),前两列显示的是表达倍数差异,第三列显示的是基因的分组信息。

表头可以是任意合法的字符串,列的顺序也没有限制。

log2FoldChange_X    log2FoldChange_Y    Set_C
2.091    0.269    Diff_0
-2.645    -1.6    Diff_1
-1.837    -0.816    Diff_3
1.23    0.686    Diff_1
-3.785    -1.18    Diff_2
-1.877    -0.956    Diff_3
-2.137    -0.42    Diff_3
-4.332    -2.028    Diff_3
-1.563    -0.788    Diff_3
-1.658    -0.503    Diff_3
-1.088    -0.453    Diff_3
1.071    1.151    Diff_1
-1.368    -0.839    Diff_3
-5.98    -2.978    Diff_3
1.183    0.094    Diff_1
-5.501    -4.017    Diff_3

用这个数据绘制散点图,应该怎么做呢?

按下图粘贴数据、点击 Check Data,选择参数

点击提交,获得结果

这个图有 2 个问题:

  1. 图例里面多了一个 NA,说明我们的分组有一个或多个数据为空。

这个可以在 Excel 中查看,如下图

2. 紫色的点覆盖了其它颜色的点,掩盖住了信息。

这个怎么解决呢?

给点设置透明色

单独给第一个点设置颜色,给透明度看看效果。

为了保持颜色统一,我们通过取色器获得这些颜色。

第一张图是设置第一个颜色为透明色,第二个颜色是正常颜色,后面的颜色设置没有展示,也都是正常颜色。


为了方便设置颜色的顺序,这里首先选择了Color variable order,也顺便把 NA 值的数据给过滤掉了;

然后设置了 5 个颜色,如图,第一个颜色明显的浅很多。

提交后获得结果如下,从图中可以看到确实 Diff_0组的点盖住了其它点,那能不能调下顺序,把Diff_0组的点调到最下面呢?

控制不同组的点绘制的顺序

绘图时默认每个组绘制的顺序取决于组第一次出现的顺序,如我们示例数据Diff_0是第 1 条,则这个组的点出现在图的最上面,覆盖其它点;

然后是Diff_1, Diff_3, Diff_2, Diff_4

如果你想让Diff_0出现在最底部,把第一行数据后移,保证前面的行中Diff_1, Diff_3, Diff_2, Diff_4都出现过 1 次。

这是一个方法。

不过我们对程序做了更新,可以通过Color variable order来控制点的绘制顺序,与图例的顺序保持一致。

图例中第一组点出现在最上面,然后是第二、三、四组点。

Color variable order下拉框中,按顺序选择Diff_1, Diff_2, Diff_3, Diff_4, Diff_0,最终效果如下图:

然后点击提交,看到不一样的模式出来了。

Diff_1, Diff_2, Diff_3, Diff_4 4 组的模式呈现了出来。

Diff_0放到了最下面。

通过分面解决点的重合

有时如果你不知道数据是不是被覆盖了,怎么办?

我们也可以设置分面,看下每一组数据的分布规律,再决定绘制顺序。

黄色高亮的参数是我们设置的参数,如下图:

点击提交后,看结果,整体分布模式与把Diff_0放在最下面出现的分布模式是一致的。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接