# -*- coding: utf-8 -*-
from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
graf = 'angelinajolie3.jpg'
ORAN=0.25 # .15
ARALIK=-0.05 # -0.15
DUZELTME =1.05
# Grafiği yeniden boyutlandır
img = Image.open(graf)
[xs,ys] = img.size
[xs,ys] = [int(xs*ORAN/DUZELTME),int(ys*ORAN) ]
img = img.resize((xs,ys))
# Yeni boyutlar
[xs,ys] = img.size
img = np.asarray(img, dtype="float")
oran2 = xs/8.0
msize = 64.0*(1.0-ARALIK)/oran2
# Grid noktalarını belirle
x, y = np.mgrid[0:(xs-1), 0:(ys-1)]
# Y eksenini tersine çevir
y = y.max() - y
grid = np.vstack([x.ravel(), y.ravel()]).T
fig = plt.figure( figsize=(int(xs/oran2), int(ys/oran2)) )
# Eksenler görünmesin
plt.axis('off')
plt.xlim((-1,xs-1))
plt.ylim((-1,ys-1))
# Nokta renklerini 256 ile sınırla
cols = [img[ ys-1-y, x, ]/255 for [x,y] in grid]
# Görüntüyü oluştur
plt.scatter( grid[:,0], # x değerleri
grid[:,1], # y değerleri
marker='h', # marker
c=cols, # renkler
linewidths=0,
edgecolors='black', # sınır rengi
s=msize**2, # marker boyutu
alpha=1.0 ) # saydamlık
# Görüntü yerleşimini düzenle
plt.subplots_adjust(left=0, right=1, bottom=0, top=1)
# Görüntüyü göster
plt.show()