矩形の線の色を変更する

PythonPythonBeginner
今すぐ練習

This tutorial is from open-source community. Access the source code

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、Matplotlib の.intersects_bbox関数を使って、矩形と交差する線の色を変える方法を学びます。矩形を作成し、それと交差するランダムな線を生成します。そして、交差する線の色を赤色に、残りの線の色を青色に変えます。

VM のヒント

VM の起動が完了したら、左上隅をクリックしてノートブックタブに切り替え、Jupyter Notebook を使って練習しましょう。

時々、Jupyter Notebook が読み込み終わるまで数秒待つ必要がある場合があります。Jupyter Notebook の制限により、操作の検証を自動化することはできません。

学習中に問題に遭遇した場合は、Labby にお問い合わせください。セッション後にフィードバックを提供してください。すぐに問題を解決いたします。

必要なライブラリをインポートする

矩形を作成し、ランダムな線を生成するために、matplotlib.pyplotnumpy ライブラリをインポートします。

import matplotlib.pyplot as plt
import numpy as np

矩形を設定する

矩形の位置と寸法を、leftbottomwidth、およびheight変数を使って定義します。そして、Rectangleクラスを使って矩形を作成し、add_patchメソッドを使ってそれをグラフに追加します。

left, bottom, width, height = (-1, -1, 2, 2)
rect = plt.Rectangle((left, bottom), width, height,
                     facecolor="black", alpha=0.1)

fig, ax = plt.subplots()
ax.add_patch(rect)

ランダムな線を生成する

numpyライブラリを使って 12 本のランダムな線を生成し、plotメソッドを使って描画します。線が矩形と交差する場合、その色は赤色になり、それ以外の場合は青色になります。線を作成するためにPathクラスを使い、矩形と交差するかどうかを確認するためにintersects_bboxメソッドを使います。

bbox = Bbox.from_bounds(left, bottom, width, height)

for i in range(12):
    vertices = (np.random.random((2, 2)) - 0.5) * 6.0
    path = Path(vertices)
    if path.intersects_bbox(bbox):
        color = 'r'
    else:
        color = 'b'
    ax.plot(vertices[:, 0], vertices[:, 1], color=color)

グラフを表示する

showメソッドを使ってグラフを表示します。

plt.show()

まとめ

この実験では、Matplotlib の.intersects_bbox関数を使って、矩形と交差する線の色を変更する方法を学びました。矩形を作成し、それと交差するランダムな線を生成しました。そして、交差する線の色を赤色に、残りの線の色を青色に変更しました。