複数ファイル
複数のファイルをまとめて読んで表示するとき、NetworkSetを使えばできそうだった。
import skrf as rf
from skrf import NetworkSet
tsDir = 'data/';
ns = rf.read_all(tsDir);
ntwk=NetworkSet(ns);
fig=plt.figure();
ntwk1.plot_s_mag(attribute='s_vswr');
plt.ylim([1,11]);
plt.ylabel('VSWR');
ax.grid();
read_allで読み込まれた変数は、4つのファイルを読んだとすると、dict となってsize=4となっていて、なんだろう??わからないけど配列みたいになっているようだ。ns[0]で一つ目のファイルが表示できるみたい。
read_all の引数に contains='text' を追加すると、ファイル名に'text'が含まれているものだけセットにしてくれる。これは便利かも!
平均を表示する
読み込まれたNetworkSetの平均を表示できる。
ntwk1.mean_s.plot_s_db();
周波数単位を指定する
普通に横軸が指数表記になるが、MHzとかGHz単位にしたい時は、NetwrokSetの場合は、read_allの引数にf_unitを指定する
ns = rf.read_all(tsDir,contains='load',f_unit='mhz'); ntwk1 = NetworkSet(ns); #下記でも同じ結果が得られる。 ntwk1[0].frequency.unit='mhz'; ntwk1[1].frequency.unit='mhz'; ntwk1[2].frequency.unit='mhz';
スライスして、Networkの指定にしても同じ結果が得られる。
コメントを追加