Example #1
0
    def test_cluster_scatter_grad_lab_diff_custom_markers(self):
        sorted_x = self.x_50x2[np.argsort(self.x_50x2[:, 1])]
        # should not have error even if gradient is provided
        eda.cluster_scatter(sorted_x,
                            labels=[0] * 25 + [1] * 25,
                            shuffle_label_colors=True,
                            gradient=sorted_x[:, 1],
                            title='test tsne scatter',
                            xlab='tsne1',
                            ylab='tsne2',
                            figsize=(10, 10),
                            n_txt_per_cluster=3,
                            alpha=0.5,
                            s=50,
                            random_state=123)

        fig = eda.cluster_scatter(sorted_x,
                                  labels=[0] * 25 + [1] * 25,
                                  gradient=sorted_x[:, 1],
                                  plot_different_markers=True,
                                  label_markers=['o'] * 10 + ['*'] * 25 +
                                  ['^'] * 15,
                                  title='test tsne scatter',
                                  xlab='tsne1',
                                  ylab='tsne2',
                                  figsize=(10, 10),
                                  n_txt_per_cluster=3,
                                  alpha=0.5,
                                  s=50,
                                  random_state=123)
        return fig
Example #2
0
 def test_cluster_scatter_no_xylab_title(self):
     fig = eda.cluster_scatter(self.x_50x2, [0] * 25 + [1] * 10 + [2] * 15,
                               figsize=(10, 10),
                               n_txt_per_cluster=3,
                               alpha=0.5,
                               s=50,
                               random_state=123)
     return fig
Example #3
0
 def test_cluster_scatter_shuffle_labcol(self):
     fig = eda.cluster_scatter(self.x_50x2, [0] * 25 + [1] * 10 + [2] * 15,
                               shuffle_label_colors=True,
                               figsize=(10, 10),
                               n_txt_per_cluster=3,
                               alpha=0.5,
                               s=50,
                               random_state=2)
     return fig
Example #4
0
 def test_cluster_scatter_no_randstate(self):
     eda.cluster_scatter(self.x_50x2, [0] * 25 + [1] * 25,
                         title='test tsne scatter',
                         xlab='tsne1',
                         ylab='tsne2',
                         figsize=(10, 10),
                         n_txt_per_cluster=3,
                         alpha=0.5,
                         s=50)
     eda.cluster_scatter(self.x_50x2, [0] * 25 + [1] * 25,
                         title='test tsne scatter',
                         xlab='tsne1',
                         ylab='tsne2',
                         figsize=(10, 10),
                         n_txt_per_cluster=3,
                         alpha=0.5,
                         random_state=None,
                         s=50)
Example #5
0
 def test_cluster_scatter_diff_lab_markers(self):
     fig = eda.cluster_scatter(self.x_50x2, [0] * 25 + [1] * 10 + [2] * 15,
                               figsize=(10, 10),
                               n_txt_per_cluster=3,
                               alpha=0.5,
                               plot_different_markers=True,
                               s=50,
                               random_state=123)
     return fig
Example #6
0
 def test_cluster_scatter_no_labels(self):
     fig = eda.cluster_scatter(self.x_50x2,
                               title='test tsne scatter',
                               xlab='tsne1',
                               ylab='tsne2',
                               figsize=(10, 10),
                               n_txt_per_cluster=3,
                               alpha=0.5,
                               s=50,
                               random_state=123)
     return fig
Example #7
0
 def test_cluster_scatter_no_legends(self):
     fig = eda.cluster_scatter(self.x_50x2, [0] * 25 + [1] * 25,
                               title='test tsne scatter',
                               xlab='tsne1',
                               ylab='tsne2',
                               figsize=(10, 10),
                               add_legend=False,
                               n_txt_per_cluster=3,
                               alpha=0.5,
                               s=50,
                               random_state=123)
     return fig
Example #8
0
 def test_cluster_scatter_gradient_legends_nolab(self):
     sorted_x = self.x_50x2[np.argsort(self.x_50x2[:, 1])]
     fig = eda.cluster_scatter(sorted_x,
                               labels=None,
                               gradient=sorted_x[:, 1],
                               title='test tsne scatter',
                               figsize=(10, 10),
                               n_txt_per_cluster=3,
                               alpha=0.5,
                               s=50,
                               random_state=123)
     return fig
Example #9
0
 def test_cluster_scatter_xylim(self):
     fig = eda.cluster_scatter(np.array(
         [list(range(50)), list(range(100, 150))]).T, [0] * 25 + [1] * 25,
                               title='xlim=(25, 50), ylim=(120, 150)',
                               figsize=(10, 10),
                               add_legend=False,
                               xlim=(25, 50),
                               ylim=(120, 150),
                               n_txt_per_cluster=3,
                               alpha=0.5,
                               s=50,
                               random_state=123)
     return fig
Example #10
0
 def test_cluster_scatter_nogradient_legends_slab0(self):
     sorted_x = self.x_50x2[np.argsort(self.x_50x2[:, 1])]
     fig = eda.cluster_scatter(sorted_x,
                               labels=[0] * 25 + [1] * 25,
                               selected_labels=[0],
                               title='test tsne scatter',
                               xlab='tsne1',
                               ylab='tsne2',
                               figsize=(10, 10),
                               n_txt_per_cluster=3,
                               alpha=0.5,
                               s=50,
                               random_state=123)
     return fig
Example #11
0
 def test_cluster_scatter_diff_lab_markers_wrong_args(self):
     # labs not provided
     with pytest.raises(ValueError) as excinfo:
         eda.cluster_scatter(self.x_50x2,
                             figsize=(10, 10),
                             n_txt_per_cluster=3,
                             alpha=0.5,
                             plot_different_markers=True,
                             label_markers=['o'] * 10 + ['*'] * 25 +
                             ['^'] * 15,
                             s=50,
                             random_state=123)
     # labs and markers have different lengths
     # wrong marker length
     with pytest.raises(ValueError) as excinfo:
         eda.cluster_scatter(self.x_50x2,
                             labels=[0] * 25 + [1] * 10 + [2] * 15,
                             figsize=(10, 10),
                             n_txt_per_cluster=3,
                             alpha=0.5,
                             plot_different_markers=True,
                             label_markers=['o'] * 10 + ['*'] * 25 +
                             ['^'] * 10,
                             s=50,
                             random_state=123)
     # wrong label length
     with pytest.raises(ValueError) as excinfo:
         eda.cluster_scatter(self.x_50x2,
                             labels=[0] * 25 + [1] * 10 + [2] * 10,
                             figsize=(10, 10),
                             n_txt_per_cluster=3,
                             alpha=0.5,
                             plot_different_markers=True,
                             label_markers=['o'] * 10 + ['*'] * 25 +
                             ['^'] * 15,
                             s=50,
                             random_state=123)
Example #12
0
    def test_cluster_scatter_wrong_args(self):
        # wrong projection2d dimention
        with pytest.raises(ValueError) as excinfo:
            eda.cluster_scatter(np.random.ranf(100).reshape(-1, 1),
                                title='test tsne scatter',
                                xlab='tsne1',
                                ylab='tsne2',
                                figsize=(10, 10),
                                n_txt_per_cluster=3,
                                alpha=0.5,
                                s=50,
                                random_state=123)

        with pytest.raises(ValueError) as excinfo:
            eda.cluster_scatter(np.random.ranf(100).reshape(-1, 5),
                                title='test tsne scatter',
                                xlab='tsne1',
                                ylab='tsne2',
                                figsize=(10, 10),
                                n_txt_per_cluster=3,
                                alpha=0.5,
                                s=50,
                                random_state=123)

        with pytest.raises(ValueError) as excinfo:
            eda.cluster_scatter(np.random.ranf(99).reshape(-1, 3),
                                title='test tsne scatter',
                                xlab='tsne1',
                                ylab='tsne2',
                                figsize=(10, 10),
                                n_txt_per_cluster=3,
                                alpha=0.5,
                                s=50,
                                random_state=123)

        # wrong label shape
        with pytest.raises(ValueError) as excinfo:
            eda.cluster_scatter(self.x_50x2, [0] * 60,
                                title='test tsne scatter',
                                xlab='tsne1',
                                ylab='tsne2',
                                figsize=(10, 10),
                                n_txt_per_cluster=3,
                                alpha=0.5,
                                s=50,
                                random_state=123)
        with pytest.raises(ValueError) as excinfo:
            eda.cluster_scatter(self.x_50x2, [[0]] * 50,
                                title='test tsne scatter',
                                xlab='tsne1',
                                ylab='tsne2',
                                figsize=(10, 10),
                                n_txt_per_cluster=3,
                                alpha=0.5,
                                s=50,
                                random_state=123)
        # wrong gradient shape
        with pytest.raises(ValueError) as excinfo:
            eda.cluster_scatter(self.x_50x2, [0] * 50,
                                gradient=list(range(60)),
                                title='test tsne scatter',
                                xlab='tsne1',
                                ylab='tsne2',
                                figsize=(10, 10),
                                n_txt_per_cluster=3,
                                alpha=0.5,
                                s=50,
                                random_state=123)
        with pytest.raises(ValueError) as excinfo:
            eda.cluster_scatter(self.x_50x2, [[0]] * 50,
                                gradient=np.arange(50).reshape(-1, 1),
                                title='test tsne scatter',
                                xlab='tsne1',
                                ylab='tsne2',
                                figsize=(10, 10),
                                n_txt_per_cluster=3,
                                alpha=0.5,
                                s=50,
                                random_state=123)
        # select labels without providing labels
        with pytest.raises(ValueError) as excinfo:
            eda.cluster_scatter(self.x_50x2,
                                selected_labels=[0],
                                gradient=list(range(50)),
                                title='test tsne scatter',
                                xlab='tsne1',
                                ylab='tsne2',
                                figsize=(10, 10),
                                n_txt_per_cluster=3,
                                alpha=0.5,
                                s=50,
                                random_state=123)
        # select absent labels
        with pytest.raises(ValueError) as excinfo:
            eda.cluster_scatter(self.x_50x2, [0] * 50,
                                selected_labels=[1],
                                gradient=list(range(50)),
                                title='test tsne scatter',
                                xlab='tsne1',
                                ylab='tsne2',
                                figsize=(10, 10),
                                n_txt_per_cluster=3,
                                alpha=0.5,
                                s=50,
                                random_state=123)
        with pytest.raises(ValueError) as excinfo:
            eda.cluster_scatter(self.x_50x2, [0] * 50,
                                selected_labels=[1, 0],
                                gradient=list(range(50)),
                                title='test tsne scatter',
                                xlab='tsne1',
                                ylab='tsne2',
                                figsize=(10, 10),
                                n_txt_per_cluster=3,
                                alpha=0.5,
                                s=50,
                                random_state=123)