In [1]:
import pandas as pd, matplotlib.pyplot as plt, numpy as np
%matplotlib inline

CCGT Gas


In [2]:
fop=np.linspace(12,20,100)

In [3]:
fcap=np.linspace(80,140,100)

In [4]:
eroi=np.zeros([len(fop),len(fcap)])

In [5]:
for i in range(len(fop)):
    for j in range(len(fcap)):
        eroi[i,j]=fop[i]*fcap[j]

In [11]:
CR=[50,90]
CF=[50,90]

In [19]:
fig,axes=plt.subplots(2,2,figsize=(8,9))
for i in range(len(axes)):
    for j in range(len(axes[i])):
        ax=axes[i][j]
        im=ax.imshow(eroi[::-1])
        fig.colorbar(im, cax=ax)
        ax.set_xlabel('fop')
        ax.set_ylabel('fcap')
        ax.set_title('EROEI\nCR='+str(CR[i])+', CF='+str(CF[j]))



In [22]:
from matplotlib.colors import BoundaryNorm
from matplotlib.ticker import MaxNLocator

In [25]:
fig,axes=plt.subplots(2,2,figsize=(8,9))
for i in range(len(axes)):
    for j in range(len(axes[i])):
        ax=axes[i][j]
        z = eroi[:-1, :-1]
        levels = MaxNLocator(nbins=15).tick_values(z.min(), z.max())
        cmap = plt.get_cmap('viridis')
        norm = BoundaryNorm(levels, ncolors=cmap.N, clip=True)
        im = ax.pcolormesh(fop, fcap, z, cmap=cmap, norm=norm)
        fig.colorbar(im, ax=ax)
        ax.set_xlabel('fop')
        ax.set_ylabel('fcap')
        ax.set_title('EROEI\nCR='+str(CR[i])+', CF='+str(CF[j]))



In [ ]:
fig,axes=plt.subplots(2,2,figsize=(8,9))
for i in range(len(axes)):
    for j in range(len(axes[i])):
        ax=axes[i][j]
        z = eroi[:-1, :-1]
        levels = MaxNLocator(nbins=15).tick_values(z.min(), z.max())
        cmap = plt.get_cmap('viridis')
        norm = BoundaryNorm(levels, ncolors=cmap.N, clip=True)
        im = ax.pcolormesh(fop, fcap, z, cmap=cmap, norm=norm)
        fig.colorbar(im, ax=ax)
        ax.set_xlabel('fop')
        ax.set_ylabel('fcap')
        ax.set_title('EROEI\nCR='+str(CR[i])+', CF='+str(CF[j]))