PythonでExcelのデータからRGB・HSV色情報の3D散布図を作成

こんにちわ!

今回は、Excelのデータから3D散布図を作成する方法を記述しました。

Excelには、たくさんのデータが保存されており、そのデータをプログラムで処理をすることで散布図を作成していきます。最終的な出力は次のようになっています。

少し難しいけど頑張ろう!

実行環境

※Anacondaは特に必要ないです。

無料オンライン相談を活用しよう!

Pythonというプログラミング言語は機械学習の人気の高まりなどもあり、様々なスクールが無料説明会を開催しています。

その中でも「Freeks(フリークス)|業界初!10,780円のサブスク型プログラミングスクール」がオススメです。Pythonを効率よく学びたいという方はまずは適性を知るためにも無料説明会を利用しましょう。

無料説明会を参加してみる!

この記事の主旨

今回の目的は、上の海外の手紙の色情報を分析することです。

分析といっても、画像には「文字」と「ハンコ(赤文字)」と「背景」の3つのクラスがあります。これらのRGBとHSVの値を抽出し、その特徴を視覚的にわかりやすいグラフで表現するのが今回の目標です。

RGB、HSVの詳細や、色情報をExcelに出力する手法は前回の記事で行いました。

【Python】画像内でクリックした箇所のRBG・HSVの値を取得しExcelに出力する方法

この手法を用いて3D散布図を作成していきます。

Excelデータの内容

Excelには300行×6列のデータが格納されています。

この値は、上記の画像上のある画素に対しての色情報がまとめられています。

データの意味は以下のようになっています。

  • 2~ 101行目 :文字データ
  • 102 ~ 201行目:背景
  • 202 ~ 301行目:ハンコ(赤文字)

このように、データがプログラムを組みやすいように調整されています。
下のExcelファイルは上の画像の様にデータが保存されてます。
マクロ機能などはないので安心してください笑

使用するデータ

実際にプログラムを見ていこう!

3D散布図作成のサンプルコード

関数「install_Excel」

「num」や「Excel_name」などの変数や、必要なモジュールは、メイン関数の部分で設定しています。

関数「draw_graph」

3D散布図でプロットする部分では、データの行数が0 ~ 99と変わっていると思われるかもしれませんが、最初の「install_Excel」関数で、見出しなどの不必要なデータを除いているのでこのようになっています。

配列「pattern」も、メイン関数のほうで定義しています。

メイン関数

必要なモジュールは全部で4つです。

よく使う「numpy」と、グラフ作成に必要な「matploylib」、3D作成のための「Axes3D」、Excelを読み込むための「openpyxl」です。

全体のコード

出力結果

お待ちかねの結果ですね!結構きれいに仕上がってますよ!

RGB色空間の3D散布図

HSV色空間の3D散布図

RGBとHSV色空間で特徴が違うね!

まとめ

今回は、海外の手紙の「文字」「ハンコ(赤文字)」「背景」の3つのクラスのRGB、HSVの色空間の特徴を3D散布図を用いて特徴を調べてみました。

予想通りにそれぞれのクラスで特徴が認められました。

今回の手法を用いて、Excelからグラフを作成する方法を理解していただければ嬉しいと思います。

無料の説明会を有効活用しよう!

独学での学習は孤独感を感じやすく挫折してしまう初心者も多いです。また、参考書を購入しても全く読む気にならないという方も多いはずです。

それでも、なんとかPythonの勉強を行い、高スキルなエンジニアを目指したいという方は無料で受けられるオンライン説明会に参加してみることも一つの手です。

Pythonというプログラミング言語は機械学習の人気の高まりなどもあり、様々なスクールが無料説明会を開催しています。

その中でも「Freeks(フリークス)|業界初!10,780円のサブスク型プログラミングスクール」がオススメです。Pythonを効率よく学びたいという方はまずは適性を知るためにも無料説明会を利用しましょう。

無料説明会を参加してみる!

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA