ふくふくHukuhuku Inc.
EP.08Kids Python対象: 小5以上 11分公開: 2026-05-10

ピクセルアートを描こう:リストでドット絵

正方形のマス目に色を塗って絵を作ろう。リスト(配列)で「位置」を覚える、プログラミングの基本練習。

#小学生#図形#リスト
CO📔 Google Colab で開く(上から順にセルを実行)
シェア

ファミコンやマインクラフトみたいなドット絵を、自分のプログラムで描いてみよう!マス目()に色を塗っていくだけで、絵が出来上がる。「絵が描けないからプログラムも...」と思ってる人ほど、これが楽しい。

1. ドット絵 = 数字の表

デジタルの絵は全部「マス目に並んだ数字」でできてる。たとえば 0 を白、1 を赤、2 を黒、と決めると、こんな数字の表が...

ハート型を表す数字のリスト
Python
heart = [    [0, 1, 1, 0, 1, 1, 0],    [1, 1, 1, 1, 1, 1, 1],    [1, 1, 1, 1, 1, 1, 1],    [0, 1, 1, 1, 1, 1, 0],    [0, 0, 1, 1, 1, 0, 0],    [0, 0, 0, 1, 0, 0, 0],]

...こんな絵になるんだ:

Pythonで描いたハート型のピクセルアート
数字のリストを画像に変換すると、ハートが現れる

2. 数字を絵に変えるコード

ハートを描いて表示する
Python
import matplotlib.pyplot as pltimport numpy as np
# 0=白、1=赤、2=黒の数字の表heart = [    [0, 1, 1, 0, 1, 1, 0],    [1, 1, 1, 1, 1, 1, 1],    [1, 1, 1, 1, 1, 1, 1],    [0, 1, 1, 1, 1, 1, 0],    [0, 0, 1, 1, 1, 0, 0],    [0, 0, 0, 1, 0, 0, 0],]
# 色のセットcolors = ["white", "red", "black"]
# numpy で扱える形にarr = np.array(heart)
# 表示するplt.figure(figsize=(5, 5))plt.imshow(arr, cmap=plt.matplotlib.colors.ListedColormap(colors))plt.axis("off")plt.show()

3. もっと色を増やそう

5色のキノコ(マリオ風)
Python
# 0=透明、1=赤、2=白、3=肌色、4=黒mushroom = [    [0, 0, 1, 1, 1, 1, 0, 0],    [0, 1, 1, 2, 2, 1, 1, 0],    [1, 2, 2, 2, 2, 2, 2, 1],    [1, 2, 1, 2, 2, 1, 2, 1],    [1, 2, 1, 2, 2, 1, 2, 1],    [0, 3, 3, 3, 3, 3, 3, 0],    [0, 3, 4, 3, 3, 4, 3, 0],    [0, 3, 3, 3, 3, 3, 3, 0],]
colors = ["white", "red", "white", "#fdd9b5", "black"]plt.imshow(mushroom, cmap=plt.matplotlib.colors.ListedColormap(colors))plt.axis("off")plt.show()
やってみよう

自分の名前のイニシャルをドット絵で描いてみよう。8×8 のマス目に「A」「Y」みたいな文字を 0/1 で書くと、それだけでも立派な作品。

次回予告

次回(EP.09)は 数あてAI。プログラムが頭をひねって、きみが考えた数字を平均7回で当てに来るよ。

シェア

この記事の感想を教えてください

あなたの 1 クリックで、本当にこの記事は更新されます。「もっと詳しく」「続編希望」が一定数集まった記事は、 ふくふくが 実際に内容を拡充したり続編記事を公開 します。 送信したリアクションはお使いのブラウザに記録され、再カウントされません。

シリーズの外も探す:

まずは、現状を聞かせてください。

要件が固まっていなくて大丈夫です。現状診断と方針提案までを無料でお手伝いします。

無料相談フォームへ hello [at] hukuhuku [dot] co [dot] jp