Python
 Computer >> コンピューター >  >> プログラミング >> Python

Matplotlibの円グラフでより多くの色を生成する方法

Matplotlibで円グラフにさらに多くの色を表示したい場合、任意の数(n個)の色とデータを生成して活用するのが効果的です。この記事では、ランダムなカラーコードを自動生成し、セクションごとに異なる色を持つ円グラフを作成する手順を解説します。

手順

  • 図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。
  • データサンプル数を表す変数 n を初期化します。
  • NumPyを使ってランダムなデータポイントを作成します。
  • 新しい図を作成するか、既存の図をアクティブにします。
  • サブプロット配置の一部として、図に '~.axes.Axes' を追加します。
  • pie() メソッドを使って円グラフを作成します。
  • 図を表示するには、show() メソッドを使用します。

コード例

import matplotlib.pyplot as plt
import random
import numpy as np

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

n = 40
color = ["#" + ''.join([random.choice('0123456789ABCDEF')
                        for j in range(6)]) for i in range(n)]
a = np.random.random(n)
f = plt.figure()
ax = f.add_subplot(111, aspect='equal')
p = plt.pie(a, colors=color)

plt.show()

コードのポイント

このコードでは、random.choice() を使って「0123456789ABCDEF」から6文字を選び出すことで、#RRGGBB 形式の16進数カラーコードを40個(n=40)ランダムに生成しています。生成された色リストは colors=color として pie() メソッドに渡され、各データポイントにそれぞれ異なる色が自動的に割り当てられます。また、aspect='equal' を指定することで、円グラフが楕円にならず正円のまま描画されます。

出力結果

Matplotlibの円グラフでより多くの色を生成する方法

  1. Matplotlibで棒グラフの上にパーセンテージを表示する方法

    Matplotlibで作成した棒グラフの各バーの上にパーセンテージ(数値)を表示するには、text()メソッドを使ってバーの上部にテキストを描画します。ここでは、その具体的な手順をコード例とともに解説します。 実装の手順 図のサイズを設定し、サブプロット間および周囲の余白(パディング)を調整します。 x・yのデータポイントを作成し、棒の幅を指定する変数widthを初期化します。 subplots()メソッドを使って、図(Figure)とサブプロット(Axes)を作成します。 x・yのデータポイントをもとに棒グラフを描画します。 各バーのパッチを反復処理し、text()メソッドでバーの上に数値

  2. Matplotlibで棒グラフのバーにテキストを表示する方法

    Matplotlibの棒グラフで、各バーの上にテキスト(数値やラベルなど)を表示したい場合は、text()メソッドを使用します。このメソッドを使うことで、グラフ上の任意の位置(x座標・y座標)を指定して、自由にテキストを配置できます。 実装の手順 x軸のラベル、y軸の値、そしてpercentage(パーセント値)のリストをそれぞれ作成します。 bar()メソッドを使って棒グラフを描画します。 zip()関数で3つのリストをまとめ、for文で反復処理しながら各バーの位置にテキストを配置します。 最後にshow()メソッドを呼び出して図を表示します。 コード例 import matplotli