Artefacts ツールキットのチャートヘルパー
Artefacts ツールキットのチャートヘルパーは、テスト実行中にトピックから受信したデータを可視化するのに役立つように設計されています。 インポート方法:
from artefacts_toolkit.chart import make_chart
関数
関数リファレンス
make_chart
2つの提供されたトピックからのデータに基づいてインタラクティブなHTMLチャートを作成します。
make_chart(
filepath,
topic_x,
topic_y,
field_unit=None,
output_dir="output",
chart_name="chart",
file_type="rosbag"
)
Parameters
パラメータ | 型 | 説明 | デフォルト |
---|---|---|---|
filepath |
str |
データファイル(rosbag)へのパス | 必須 |
topic_x |
str |
x軸のトピック名。時間に対してプロットする場合は “Time” を使用 | 必須 |
topic_y |
str |
y軸のトピック名。時間に対してプロットする場合は “Time” を使用 | 必須 |
field_unit |
str |
フィールドデータの測定単位(例:「m/s」、「rad」) | None |
output_dir |
str |
チャートが保存されるディレクトリ | "output" |
chart_name |
str |
生成されるチャートファイルの名前 | "chart" |
file_type |
str |
データファイルのタイプ。現在は “rosbag” をサポート | "rosbag" |
戻り値
None
: output_dir
に <chart_name>.html
という HTML チャートを作成しますが、値は返しません。
Note
- 現在、rosbag からのチャート作成のみをサポートしています。
- “Time” をトピックの1つとして使用する場合、関数は可能であれば他のトピックをそのトピックのタイムスタンプに対してプロットします。トピックのメッセージ構造にタイムスタンプがない場合は、rosbag の時間が使用されます。
例
以下の例では、テストが完了し rosbag が保存された後、すなわちシャットダウン後に make_chart
関数を追加しています。
# my_test_file.launch.py
# test code
...
@launch_testing.post_shutdown_test()
class TestProcOutputAfterShutdown(unittest.TestCase):
def test_exit_code(self, rosbag_filepath):
make_chart(
rosbag_filepath,
"/odom.pose.pose.position.x",
"/odom.pose.pose.position.y",
field_unit="m",
chart_name="odometry_position",
)
以下のようなチャートが生成されます: