NetworkSet

ee9king に投稿

複数ファイル

複数のファイルをまとめて読んで表示するとき、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の指定にしても同じ結果が得られる。

 

コメントを追加

Plain text

  • HTMLタグは利用できません。
  • ウェブページのアドレスとメールアドレスは自動的にリンクに変換されます。
  • 行と段落は自動的に折り返されます。