#!/usr/bin/env python

import matplotlib
from matplotlib import pyplot as plt

import numpy as np

from matplotlib._png import read_png
from matplotlib.offsetbox import OffsetImage
from matplotlib.offsetbox import AnnotationBbox

if __name__ == "__main__":

    matplotlib.rcParams["figure.figsize"] = (8., 6.)
    matplotlib.rcParams["figure.dpi"] = 200
    matplotlib.rcParams["savefig.dpi"] = matplotlib.rcParams["figure.dpi"]

    fig = plt.figure()
    ax = fig.add_subplot(111)

    logo_data = read_png("dummy.png")
    fig_dpi = ax.get_figure().dpi
    fig_size = ax.get_figure().get_size_inches()

    zoom_factor = 1.
    # zoom_factor = .1 * fig_dpi * fig_size[0] / np.shape(logo_data)[0]

    logo_box = OffsetImage(logo_data, zoom=zoom_factor)
    ann_box = AnnotationBbox(logo_box, [0., 1.],
                             xybox=(2., -3.),
                             xycoords="axes fraction",
                             boxcoords="offset points",
                             box_alignment=(0., 1.),
                             pad=0., frameon=False)
    ax.add_artist(ann_box)

    fig.savefig("test.png")
    fig.savefig("test.pdf")

    plt.close()
