Pemilihan Warna

Matplotlib memiliki dukungan untuk memvisualisasikan informasi dengan beragam warna dan peta warna. Tutorial ini mencakup dasar-dasar bagaimana peta warna ini terlihat, bagaimana kita dapat membuatnya sendiri, dan bagaimana kita dapat menyesuaikan peta warna.

"CN" pemilihan warna 

Matplotlib mengonversi warna "CN" ke RGBA saat menggambar. 

import numpy as np

import matplotlib.pyplot as plt

import matplotlib as mpl

 

th = np.linspace(0, 2*np.pi, 128)

 

 

def demo(sty):

    mpl.style.use(sty)

    fig, ax = plt.subplots(figsize=(3, 3))

 

    ax.set_title('style: {!r}'.format(sty), color='C0')

 

    ax.plot(th, np.cos(th), 'C1', label='C1')

    ax.plot(th, np.sin(th), 'C2', label='C2')

    ax.legend()

 

 

demo('default')

demo('seaborn')



Warna pertama 'C0'adalah judul. Setiap plot menggunakan warna kedua dan ketiga dari setiap gaya rcParams["axes.prop_cycle"](default: ). Mereka adalah dan , masing-masing.cycler('color', ['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728', '#9467bd', '#8c564b', '#e377c2', '#7f7f7f', '#bcbd22', '#17becf'])'C1''C2'


Perbandingan antara X11 / CSS4 dan warna xkcd 

Warna xkcd berasal dari survei pengguna yang dilakukan oleh webcomic xkcd .

95 dari 148 nama warna X11/CSS4 juga muncul dalam survei warna xkcd. Hampir semuanya memetakan ke nilai warna yang berbeda di X11/CSS4 dan di palet xkcd. Hanya 'hitam', 'putih' dan 'sian' yang identik.

Misalnya, 'blue'memetakan ke '#0000FF'sedangkan 'xkcd:blue'memetakan ke '#0343DF'. Karena tabrakan nama ini, semua warna xkcd memiliki 'xkcd:'awalan.

Visual di bawah ini menunjukkan tabrakan nama. Nama warna dengan nilai warna yang sesuai dicetak tebal.

import matplotlib._color_data as mcd

import matplotlib.patches as mpatch

import matplotlib.pyplot as plt

 

overlap = {name for name in mcd.CSS4_COLORS

           if "xkcd:" + name in mcd.XKCD_COLORS}

 

fig = plt.figure(figsize=[9, 5])

ax = fig.add_axes([0, 0, 1, 1])

 

n_groups = 3

n_rows = len(overlap) // n_groups + 1

 

for j, color_name in enumerate(sorted(overlap)):

    css4 = mcd.CSS4_COLORS[color_name]

    xkcd = mcd.XKCD_COLORS["xkcd:" + color_name].upper()

 

    col_shift = (j // n_rows) * 3

    y_pos = j % n_rows

    text_args = dict(va='center', fontsize=10,

                     weight='bold' if css4 == xkcd else None)

    ax.add_patch(mpatch.Rectangle((0 + col_shift, y_pos), 1, 1, color=css4))

    ax.add_patch(mpatch.Rectangle((1 + col_shift, y_pos), 1, 1, color=xkcd))

    ax.text(0 + col_shift, y_pos + .5, '  ' + css4, alpha=0.5, **text_args)

    ax.text(1 + col_shift, y_pos + .5, '  ' + xkcd, alpha=0.5, **text_args)

    ax.text(2 + col_shift, y_pos + .5, '  ' + color_name, **text_args)

 

for g in range(n_groups):

    ax.hlines(range(n_rows), 3*g, 3*g + 2.8, color='0.7', linewidth=1)

    ax.text(0.5 + 3*g, -0.5, 'X11', ha='center', va='center')

    ax.text(1.5 + 3*g, -0.5, 'xkcd', ha='center', va='center')

 

ax.set_xlim(0, 3 * n_groups)

ax.set_ylim(n_rows, -1)

ax.axis('off')

 

plt.show()



Share on :

0 Response to "Pemilihan Warna"

Posting Komentar