ホームページ > バックエンド開発 > Python チュートリアル > Matplotlib の `pyplot.scatter()` 関数は、マーカー サイズを制御するために `s` パラメータをどのように使用しますか?

Matplotlib の `pyplot.scatter()` 関数は、マーカー サイズを制御するために `s` パラメータをどのように使用しますか?

Linda Hamilton
リリース: 2024-11-25 15:38:12
オリジナル
309 人が閲覧しました

How Does Matplotlib's `pyplot.scatter()` Function Use the `s` Parameter to Control Marker Size?

pyplot 散布図マーカー サイズ

matplotlib.pyplot.scatter() 関数では、s パラメーターでマーカー サイズを指定します。このサイズは「ポイント^2」で定義されますが、これは解釈が難しい測定単位となる可能性があります。

「ポイント」とは何ですか?

「ポイント」この文脈における「」は、マーカーのサイズを定義するために使用される任意の測定単位です。これはディスプレイ上のピクセルのサイズとは直接関係しません。

s はマーカー サイズにどのように影響しますか?

s パラメーターはマーカーの領域を指定します。これは、次のことを意味します。

  • s を 4 倍に増やすと、マーカーの幅と高さが 2 倍に増加します。
  • マーカー (または任意の線形) の幅を 2 ​​倍にします。
  • マーカーの領域を 2 倍にするには、s を 4 倍に増やす必要があります。 2.

さまざまなマーカー サイズで散布図を作成してみましょう:

import matplotlib.pyplot as plt

x = [0, 2, 4, 6, 8, 10]
y = [0] * len(x)
s = [20 * 4**n for n in range(len(x))]

plt.scatter(x, y, s=s)
plt.show()
ログイン後にコピー

この例では、マーカー サイズ左から右に移動するにつれて指数関数的に増加します。各マーカーの面積は前のマーカーの 2 倍です。

マーカー サイズの視覚化

マーカー サイズに影響を与えるさまざまな関数を視覚化するには、次のプロットを作成しましょう。

import matplotlib.pyplot as plt

x = [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
s_exp = [20 * 2**n for n in range(len(x))]
s_square = [20 * n**2 for n in range(len(x))]
s_linear = [20 * n for n in range(len(x))]

plt.scatter(x, [1] * len(x), s=s_exp, label='$s=2^n$', lw=1)
plt.scatter(x, [0] * len(x), s=s_square, label='$s=n^2$')
plt.scatter(x, [-1] * len(x), s=s_linear, label='$s=n$')
plt.ylim(-1.5, 1.5)
plt.legend(loc='center left', bbox_to_anchor=(1.1, 0.5), labelspacing=3)
plt.show()
ログイン後にコピー

このプロットは、指数関数、二次関数、および関数でスケールしたときにマーカー サイズがどのように表示されるかを示しています。直線的に。

以上がMatplotlib の `pyplot.scatter()` 関数は、マーカー サイズを制御するために `s` パラメータをどのように使用しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート