File: test_devectorize.py

package info (click to toggle)
astroml 1.0.2-7
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 928 kB
  • sloc: python: 5,731; makefile: 3
file content (43 lines) | stat: -rw-r--r-- 908 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
from io import BytesIO

import numpy as np
from numpy.testing import assert_

import matplotlib
from matplotlib import image
import matplotlib.pyplot as plt

from astroML.plotting.tools import devectorize_axes


matplotlib.use('Agg')  # don't display plots


def test_devectorize_axes():
    np.random.seed(0)

    x, y = np.random.random((2, 1000))

    # save vectorized version
    fig = plt.figure()
    ax = fig.add_subplot(111)
    ax.scatter(x, y)
    output = BytesIO()
    fig.savefig(output)
    output.seek(0)
    im1 = image.imread(output)
    plt.close()

    # save devectorized version
    fig = plt.figure()
    ax = fig.add_subplot(111)
    ax.scatter(x, y)
    devectorize_axes(ax, dpi=200)
    output = BytesIO()
    fig.savefig(output)
    output.seek(0)
    im2 = image.imread(output)
    plt.close()

    assert_(im1.shape == im2.shape)
    assert_((im1 != im2).sum() < 0.1 * im1.size)