初心者向けプログラミング講座
第3回: Pythonでライブラリを使った開発
講座の概要については以下からご覧下さい。
目的
この回では、Pythonのライブラリを使った開発について学びます。Pythonにはさまざまな便利なライブラリが用意されており、目的に応じて利用することで効率的な開発が可能です。ライブラリを使わずに開発することはほとんど無いと言っても過言ではありません。本講座では特に、計測器制御に利用するライブラリ(pyvisaなど)や、データ処理・可視化に使うライブラリ(例:numpy、matplotlib)について触れていきます。
今回はライブラリをインストールし、基本的な使い方を理解することを目標とします。
学習内容
- Pythonライブラリとは
- ライブラリのインストール方法(pip / condaの使い方)
- よく使うライブラリの紹介
- 計測器制御用ライブラリ: pyvisa
- 数値計算とデータ処理用ライブラリ: numpy
- グラフ描画用ライブラリ: matplotlib
- 基本的なライブラリの使い方
- 演習問題でライブラリの使用を実践
1. Pythonライブラリとは
Pythonライブラリの概要
Pythonライブラリは、特定の機能や処理を簡単に行えるようにまとめられた便利なツールセットです。ライブラリを使うことで、複雑な処理を1からプログラムする必要がなくなります。
標準ライブラリと外部ライブラリ
標準ライブラリ
Pythonに最初から組み込まれているライブラリです。追加のインストールなしで使用できます。(例)math、datetime、osなど。
Python標準ライブラリは公式サイトで内容を確認することができます。
合わせて読みたい
Python標準ライブラリ一覧(外部サイトに移動します)
外部ライブラリ
必要に応じて自分でインストールして使用します。(例)pyvisa、numpy、matplotlibなど。外部ライブラリについては様々なサイトで紹介されていますので、「外部ライブラリ」で検索してみてください。
2. ライブラリをインストールする方法
Pythonでは、pipというパッケージ管理ツールを使用して外部ライブラリをインストールします。Jupyter Notebookでは、Home画面に戻り New → Terminalで端末を起動し、端末から以下の操作をします。
基本的なコマンド
インストール済みライブラリの確認
現在インストールされているライブラリを一覧表示します。
pip list
ライブラリのインストール
pip install ライブラリ名
例:pyvisaをインストールする場合
pip install pyvisa
ライブラリのアンインストール
不要なライブラリを削除する場合に使用します。
pip uninstall ライブラリ名
注意点
Anaconda環境を使用している場合は、pipではなくcondaコマンドを使うことを推奨します。(pipではPythonで開発されたライブラリに限定してインストールできますが、condaではそれ以外のライブラリもインストールできるようです)
conda install pyvisa
3. よく使うライブラリの紹介
計測器制御: pyvisa
概要
pyvisaは、National Instruments社により開発されたVISA(Virtual Instruments Software Architecture)プロトコルを使用して計測器を制御するためのライブラリです。GP-IBやUSBなどのインターフェースに対応しています。
インストール
pip install pyvisa
基本的な使い方
import pyvisa
# 計測器リソースのリストを取得
rm = pyvisa.ResourceManager()
print(rm.list_resources())
数値計算とデータ処理: numpy
概要
numpyは、数値計算やデータ処理を効率的に行うためのライブラリです。大量のデータを扱う際、リストよりも高速に演算ができる「配列(array)」機能を提供します。
インストール
pip install numpy
基本的な使い方
import numpy as np
# 配列の作成
data = np.array([1, 2, 3, 4, 5])
# 配列の演算
data = data * 2
print(data) # [ 2 4 6 8 10]
# 配列の統計量
print("合計:", np.sum(data))
print("平均:", np.mean(data))
print("最大値:", np.max(data))
グラフ描画: matplotlib
概要
matplotlibは、データを可視化するためのグラフ描画ライブラリです。折れ線グラフや棒グラフ、散布図などを簡単に作成できます。
インストール
pip install matplotlib
基本的な使い方
import matplotlib.pyplot as plt
# グラフ用データの作成
x = [1, 2, 3, 4, 5]
y = [10, 20, 25, 30, 35]
# グラフ作成
plt.plot(x, y) # 折れ線グラフ
plt.title("Sample Graph") # タイトル
plt.xlabel("X-Axis") # X軸ラベル
plt.ylabel("Y-Axis") # Y軸ラベル
plt.show() # グラフ表示
実行結果

4. 実践プログラム
例題 1: numpy + matplotlibでデータ処理とグラフ化
以下は、numpyで生成した数値データをmatplotlibでグラフ化する例です。
import numpy as np
import matplotlib.pyplot as plt
# データの生成
x = np.linspace(0, 10, 100) # 0から10までを100分割
y = np.sin(x) # sin関数
# グラフの描画
plt.plot(x, y, label="sin(x)") # 折れ線グラフ
plt.title("Sine Wave") # タイトル
plt.xlabel("X") # X軸
plt.ylabel("sin(X)") # Y軸
plt.legend() # 凡例
plt.show()
実行結果

例題 2: pyvisaで計測器のリソースを確認する
以下は、計測器リソースを確認するプログラムです。
import pyvisa
# リソースマネージャを作成
rm = pyvisa.ResourceManager()
# 利用可能な計測器リソースを表示
resources = rm.list_resources()
print("利用可能なリソース:")
for res in resources:
print(res)
注意:実行する際は、デバイスが接続されている必要があります。
5. 演習問題
演習問題 1: sinカーブとcosカーブをグラフ化
numpyを使ってsin(x)とcos(x)のデータを生成します。
それぞれのデータをmatplotlibで表示し、互いに比較できるようにします。
ヒント
np.sin() と np.cos() の両方を使います。
plt.plot() をそれぞれ呼び出し、凡例(label)を設定します。
解答例を表示
import numpy as np
import matplotlib.pyplot as plt
# データの生成
x = np.linspace(0, 10, 100) # 0から10までを100分割
y1 = np.sin(x) # sin関数
y2 = np.cos(x) # cos関数
# グラフの描画
plt.plot(x, y1, label="sin(x)") # 折れ線グラフ
plt.plot(x, y2, label="cos(x)") # 折れ線グラフ
plt.title("sin/cos Wave") # タイトル
plt.xlabel("X") # X軸
plt.ylabel("sin/cos(X)") # Y軸
plt.legend() # 凡例
plt.show()

演習問題 2: pyvisaを使った基本操作
pyvisaを使用して、以下を行うプログラムを作成してください。
接続された計測器リソースを取得します。
全ての計測器に*IDN?コマンドを送り、その応答を表示します。
(計測器が接続されていない場合は、モックコードのような形でも可。)
解答例を表示
import pyvisa
# リソースマネージャを作成
rm = pyvisa.ResourceManager()
# 利用可能な計測器リソースを取得
resources = rm.list_resources()
# 各デバイスに"*IDN?"コマンドを発行し、デバイスのIDを取得して表示
for res in resources:
instrument = rm.open_resource(res)
print(res, instrument.query("*IDN?"))
次回予告
次回は、計測器制御の基礎知識について学びます。GP-IBやUSBなどの接続方法や、VISAプロトコルの基本概念を理解していきましょう!