Up 画像表示におけるウィンドウサイズ 作成: 2021-04-29
更新: 2021-04-29


    データセットの画像は,画素数 3x3 で,全部で3枚。
    ウィンドウの 300×900 のキャンバスを3行1列に等分し,画像3枚を上から下へ順に置いていく。
      >>> import matplotlib.pyplot as plt >>> plt.figure(figsize=(3,9)) <Figure size 300x900 with 0 Axes> >>> for n,image in enumerate(image_ds): .... plt.subplot(3,1,n+1) ... plt.imshow(image) ... plt.grid(False) ... plt.xticks([]) ... plt.yticks([]) ... plt.show() ... <AxesSubplot:> <matplotlib.image.AxesImage object at 0x5096e230> ([], []) ([], []) (画像のウィンドウが開く)


      ウィンドウを閉じる
      <AxesSubplot:> <matplotlib.image.AxesImage object at 0x50139810> ([], []) ([], []) (画像のウィンドウが開く)


      ウィンドウを閉じる
      <AxesSubplot:> <matplotlib.image.AxesImage object at 0x50160df0> [], []) ([], []) (画像のウィンドウが開く)
      ウィンドウを閉じる >>>


    最初に開いたウィンドウのキャンバスサイズは,設定通りの 300x900。
    しかし,2枚目からウィンドウおよびが画像のサイズが違ってくる。
    いまは,PC から Raspberry Pi に ssh -X で接続し,python のインタラクティブ・シェルで作業している。
    この場合,PC のデスクトップに Xウィンドウで表示される画像は,1つのXウィンドウに連続して描かれるようにはならない。
    2枚目から画像サイズが違ってくるのは,これが理由と考えられる。
    ──2枚目以降のウィンドウサイズは,デフォルトのサイズか?

    ということで,plt.figure(figsize を設定しないでやってみる:
      >>> for n,image in enumerate(image_ds.take(3)): ... plt.subplot(3,1,n+1) ... plt.imshow(image) ... plt.grid(False) ... plt.xticks([]) ... plt.yticks([]) ... plt.show() ... <AxesSubplot:> <matplotlib.image.AxesImage object at 0x51740310> ([], []) ([], []) (画像のウィンドウが開く)
      ウィンドウを閉じる <AxesSubplot:> <matplotlib.image.AxesImage object at 0x5cfd50d0> ([], []) ([], []) (画像のウィンドウが開く)
      ウィンドウを閉じる <AxesSubplot:> <matplotlib.image.AxesImage object at 0x692a0b70> ([], []) ([], []) (画像のウィンドウが開く)
      ウィンドウを閉じる >>>