Matplotlib - 在Qt表单上编写TeX

11

我想在我的Qt表单中添加一些TeX文本,就像标签一样-只有文本,没有图形,没有线条,没有边框,只有TeX。我想到了这样的方法:将TeX渲染为位图,然后将该位图放置在表单上,例如放置在QLabel中。或者更好的办法是-使用一些后端,将其添加到表单中并使用tex_label.print_tex(<tex code>)等方式。似乎matplotlib具有TeX解析器,但我不知道如何使用它们...

谢谢。

1个回答

10

作为一种变体:

    from matplotlib.figure import Figure
    from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg

    # Get window background color
    bg = self.palette().window().color()
    cl = (bg.redF(), bg.greenF(), bg.blueF())

    # Create figure, using window bg color
    self.fig = Figure(edgecolor=cl, facecolor=cl)

    # Add FigureCanvasQTAgg widget to form
    self.canvas = FigureCanvasQTAgg(self.fig)        
    self.tex_label_placeholder.layout().addWidget(self.canvas)

    # Clear figure
    self.fig.clear()

    # Set figure title
    self.fig.suptitle('$TeX$',
                      x=0.0, y=0.5, 
                      horizontalalignment='left',
                      verticalalignment='center')
    self.canvas.draw()

这是我今天在stackoverflow上关于TeX渲染问题发布的12个帖子中最佳的解决方案。 - Anti Earth
1
Figure 是从哪里来的?是从 matplotlib 还是 pyqt? - bzm3r
当图表标题中的文本溢出时,如何使用滚动条或类似的东西来访问文本? - 8hantanu

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接