所以我有一个完全黑色的matplotlib图,所有轴都被禁用,图中唯一存在的是白色文本,包含一个由用户输入的数学表达式,它作为参数传递给渲染函数EXPR”。
def render(expr, path, width, x, y):
fig = plt.figure(figsize=(width, 16 if 'begin' in expr else 12))
plt.text(x, y, expr, fontsize=320, fontweight='bold', color='white')
fig.set_facecolor('#000000')
plt.axis('off')
plt.savefig(path, facecolor=fig.get_facecolor())
plt.clf()
'width'是绘图的宽度,目前我有一个非智能系统,它会触及明文表达式的长度和绘图宽度之间的关系,但它并不完全适用于矩阵图有多条线,系统到位显然不能很好地工作。
我希望根据白色文本在绘图上的延伸程度来计算绘图所需的宽度,因此只要文本在横向上完成,我希望绘图结束,有没有办法做到这一点?/检测白色文本何时会在情节中结束?
这样表达式之后就没有很多黑色空间,减慢了渲染时间到.png和浪费空间。由于图的宽度与表达式
相同答案 0 :(得分:0)
github上有一个完整的解决方案:
通过 ahwillia
将LaTeX等式绘制为matplotlib数字https://gist.github.com/ahwillia/c7e54f875913ebc3de3852e9f51ccc69
<小时/> github上还有另一个模块,它也可以在命令行上运行:
texscrap - 用于通过 johnjosephhorton
从LaTeX碎片制作PDF的Python实用程序