👋
「ARC2によるRDFグラフの視覚化」をPythonで利用する
概要
神崎正英氏が公開する「ARC2によるRDFグラフの視覚化」をPythonで利用させていただく機会がありましたので、備忘録です。
「ARC2によるRDFグラフの視覚化」の公開ページは以下です。
Turtle、RDF/XML、JSON-LD、TriGもしくはMicrodataで記述したRDFを入力として、可視化結果をpngやsvgファイルで取得することができます。
Pythonでの利用例
import requests
text = "@prefix ns1: <http://example.org/propery/> .\n\n<http://example.org/bbb> ns1:aaa \"ccc\" ."
output_path = "./graph.png"
# POSTリクエストに必要なデータ
url = "https://www.kanzaki.com/works/2009/pub/graph-draw"
data = {
"RDF": text,
"rtype": "turtle",
"gtype": "png",
"rankdir": "lr",
"qname": "on",
}
# POSTリクエストを送信
response = requests.post(url, data=data)
# 応答がPNG画像でない場合、内容を確認
if response.headers['Content-Type'] != 'image/png':
print("応答はPNG画像ではありません。内容を表示します:")
# print(response.text[:500]) # 最初の500文字を表示 # [:500]
else:
os.makedirs(os.path.dirname(output_path), exist_ok=True)
# 応答をPNGファイルとして保存
with open(output_path, 'wb') as f:
f.write(response.content)
まとめ
RDFデータの可視化にあたり、参考になりましたら幸いです。
Discussion