Python・Matplotlibでテキストファイルを読み込んでシンプルな棒グラフを作成する方法
入力したテキストファイル(.txt)のデータをもとに、シンプルな棒グラフを描画する方法を解説します。PythonのMatplotlibライブラリを使えば、わずか数行のコードで実現できます。
基本的な手順
テキストファイルから棒グラフを作成するには、以下の手順に従います。
- 棒のラベル(名前)と高さ(値)を格納するための空のリストを用意します。
- テキストファイルを開き、1行ずつ読み込みます。
- 各行から読み取った名前と高さを、それぞれ対応するリストに追加します。
- 用意したリストを使って
plt.bar()で棒グラフを描画します。 plt.show()メソッドを呼び出して、図を画面に表示します。
サンプルコード
以下が実際のコード例です。
from matplotlib import pyplot as plt
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
bar_names = []
bar_heights = []
for line in open("test_data.txt", "r"):
bar_name, bar_height = line.split()
bar_names.append(bar_name)
bar_heights.append(bar_height)
plt.bar(bar_names, bar_heights)
plt.show()
コードのポイント
line.split()は空白文字で行を分割し、「名前」と「数値」を同時に取得できます。figure.figsizeを設定することで、図のサイズを自由に調整できます。figure.autolayoutを有効にすると、ラベルやタイトルが図の外にはみ出すのを自動的に防げます。
入力ファイルの内容
この例で使用する「test_data.txt」には、次のようなデータが含まれています。各行は「名前 値」の形式で記述されています。
Javed 75
Raju 65
Kiran 55
Rishi 95
実行結果
スクリプトを実行すると、各名前がX軸のラベルとして表示され、対応する値の高さを持つ棒グラフが描画されます。これにより、テキストファイル内のデータをひと目で視覚的に比較できるようになります。
この手法は、ログファイルや集計結果など、スペース区切りのシンプルなテキストデータを素早く可視化したい場合に非常に便利です。CSV形式などより複雑なデータを扱う場合は、pandas ライブラリとの組み合わせも検討してみてください。
-
Python Matplotlibで3Dグラフをプロットする方法を解説
PythonのMatplotlibを使えば、3次元の散布図やグラフを簡単に描画できます。この記事では、mpl_toolkits.mplot3dモジュールを利用して3Dグラフを作成する手順を、サンプルコード付きでわかりやすく解説します。 3Dグラフをプロットする基本手順 Pythonで3Dグラフを描くには、以下のステップに従います。 figure()メソッドを使って、新しい図(フィギュア)を作成するか、既存の図をアクティブにします。 Axes3Dオブジェクトを取得して、3D用の座標軸を準備します。 x、y、zそれぞれのデータポイントをリストとして定義します。 scatter3D()メソッドを使
-
Pythonのmatplotlibで積み上げ棒グラフを作成・表示する方法
Matplotlibは、Pythonで最も広く使われているデータ可視化ライブラリの一つです。データの可視化は、数値を一つずつ確認したり複雑な計算を行ったりすることなく、データ全体の傾向や特徴を直感的に把握するために欠かせないステップです。また、定量的な洞察を効果的に伝える手段としても非常に有用です。 Matplotlibは、データをもとに2次元のグラフやプロットを作成するために使用されます。オブジェクト指向のAPIを備えており、作成したグラフをPythonアプリケーションに組み込むことも可能です。IPythonシェル、Jupyter Notebook、Spyder IDEなど、さまざまな環境で