Python でランダムな色を生成する

Manav Narula 2023年1月30日
  1. Python で RGB 形式のランダムカラーを生成する
  2. Python で 16 進形式でランダムな色を生成する
Python でランダムな色を生成する

デジタルの世界では、色はさまざまな形式で表されます。RGB、16 進形式は、よく使用される形式のほんの一部です。

このチュートリアルでは、Python でランダムな色を生成する方法を学習します。ランダムな色の生成について話すとき、色を表すことができるランダムなコードを生成します。さまざまな方法で、さまざまな形式のカラーコードが生成されます。

Python で RGB 形式のランダムカラーを生成する

RGB は Red、Green、Blue の略です。一緒にそれらはデジタル世界の色スペクトルを表します。赤、緑、青を合わせてすべての色を表すことができ、それぞれ 8 ビットです。これは、0 から 255 までの整数値を持っていることを意味します。

RGB 形式でランダムな色を生成するために、0 から 255 までのランダムな整数のリストまたはタプルを生成します。

次のコードは、これを実装する方法を示しています。

import numpy as np

color = list(np.random.choice(range(256), size=3))
print(color)

出力:

[245, 159, 34]

上記のコードの NumPy モジュールから random を使用してランダム整数を生成します。0 から 255 までのランダムな整数を 3 回生成し、リストに格納するだけです。ランダムな整数は他の多くの方法で生成できるため、主な焦点はコードのロジックにある必要があります。

Python で 16 進形式でランダムな色を生成する

16 進数では、色は 6 桁の 16 進数で表され、先頭に#記号が付きます。形式は #RRGGBB です。ここで、R、G、および B は、それぞれ RedGreen、および Blue を示し、16 進数です。

以下に示すコードを使用して、この形式でランダムな色を生成できます。

import random

color = ["#" + "".join([random.choice("0123456789ABCDEF") for j in range(6)])]
print(color)

出力:

['#BE3559']

上記のコードでは、指定された 16 進数から 6つの乱数を選択し、join() 関数を使用してそれらを # 記号とマージします。

利用可能な他の多くのカラーフォーマットがあり、それらの間で変換を実行するのは非常に簡単です。

このチュートリアルでは、さまざまな形式でカラーコードを生成したことを覚えておいてください。これらの色を実際に表示するには、他のモジュールを使用してグラフィックを作成するか、グラフをプロットする必要があります。

たとえば、以下のコードでは、Matplotlib モジュールの散布図を使用して生成したカラーコードの単純なドットをプロットします。

import random
import matplotlib.pyplot as plt

color = ["#" + "".join([random.choice("0123456789ABCDEF") for j in range(6)])]
print(color)

plt.scatter(random.randint(0, 10), random.randint(0, 10), c=color, s=200)
plt.show()

出力:

Python のランダムな色

著者: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

関連記事 - Python Color