graphviz를 이용해서 그림을 그리고, flask로 웹으로 보냅시다.
최대 1 분 소요
graphviz로 그림 그리기.
- 저는 보통 그냥
networkx
로 그림을 그리지만, 경우에 따라서는 graphviz
로 그림을 그릴때도 있습니다.
- 여기서는,
graphviz
로 그림을 그리고, 이를 버퍼에 저장해서 바로 웹으로 보내주는 것을 정리하였습니다.
code
from flask import Flask, render_template
from flask import Markup
from graphviz import Graph# Graph를 만들어줍니다.
app = Flask(__name__)
@app.route("/test")
def test():
from graphviz import Digraph, Graph
g = Digraph('hello', format='svg')
g.edge('Hello', 'World')
g_svg = g.pipe().decode("utf-8")
g_svg = Markup(g_svg)
return render_template("test.html", g_svg=g_svg
)
if __name__ == '__main__':
# debug를 True로 세팅하면, 해당 서버 세팅 후에 코드가 바뀌어도 문제없이 실행됨.
app.run(host='127.0.0.1', port=8001, debug = True)
<html>
<head>
</head>
<body>
{{g_svg}}
</body>
</html>
wrap-up
댓글남기기