damyarou

python, GMT などのプログラム

Python 色見本作成(16進指定)

記事の最後に行く

色見本作成プログラム

import matplotlib.pyplot as plt
import subprocess


def drawfig(scolor):
    xmin=0
    xmax=6
    ymin=0
    ymax=36
    plt.figure(figsize=(4,8),facecolor='w')
    plt.rcParams['font.family'] = 'Ricty Diminished'
    plt.xlim([xmin,xmax])
    plt.ylim([ymax,ymin])
    plt.axis('off')
    # Draw box
    fsize=9 # fontsize
    for i in range(int(ymin),int(ymax)):
        for j in range(int(xmin),int(xmax)):
            col=scolor[i][j]
            xs=float(j)
            xe=xs+1.0
            ys=float(i)
            ye=ys+1.0
            rectangle = plt.Rectangle((xs, ys), xe-xs, ye-ys, fc=col,ec='#ffffff',lw=0.5)
            plt.gca().add_patch(rectangle) 
            xg=0.5*(xs+xe)
            yg=0.5*(ys+ye)
            cn='#000000'
            if j<4: cn='#ffffff'
            plt.text(xg,yg,col,rotation=0,ha='center',va='center',fontsize=fsize,color=cn)
    fnameF='fig_col_hex.jpg'
    plt.savefig(fnameF, dpi=300, bbox_inches="tight", pad_inches=0.2)
    plt.show()

    
def main():
    h_list=['00','33','66','99','cc','ff']
    scolor=[['']*6 for i in range(0,36)]
    ii=-1
    for c1 in h_list:
        for c2 in h_list:
            ii=ii+1
            sh=[]
            for c3 in h_list:
                sh=sh+['#'+c1+c3+c2]
            scolor[ii][:]=sh
            del sh
    drawfig(scolor)
    cmd='convert fig_col_hex.jpg -trim fig_col_hex.jpg'
    subprocess.call(cmd,shell=True)
            

#==============
# Execution
#==============
if __name__ == '__main__': main()

色見本画像

f:id:damyarou:20190429111548j:plain

Thank you.

記事の先頭に行く