MathTextParser
Qtでいくつかの方程式を描くために使用しています。したがって、必要な tex 文字列を dict から取得し、作成したパーサーの to_rgba メソッドを使用して解析し (一般的なフォント サイズと dpi を渡します)、最後にこれをbyの myFigureCanvas
に渡します。
見てください:QWidget
figimage
class MathWidget(QWidget):
def __init__(self, parent = None):
QWidget.__init__(self, parent)
...
self.canvas = MathCanvas() # The FigureCanvas to display the teximage
...
self.parser = mathtext.MathTextParser("Bitmap")
def render(self,metric):
equation = self.equations[metric]
rgb, d = self.parser.to_rgba(equation, color='black', fontsize=8, dpi=200)
self.canvas.fig.figimage(rgb.astype(float)/255., 0, 0)
self.canvas.draw()
私の問題は、解析される方程式の長さが可変であるのに対し、 FigureCanvas
(必要に応じて)固定サイズであるため、一部の方程式が画像になり、そのサイズが数値を超えることです。この例のように、数式の一部が切り取られている/表示されていない:
数式
を切り取る(予測できない長さの) 方程式は、解析して表示する必要があります。
出力が方程式のサイズ/長さとは無関係に固定サイズのラスタライズされたテックスになるように、パーサーをたとえばフォントサイズに合わせる方法はありますか?
その上:たとえばnumpy/scipyと比較して、matplotlibのドキュメントは何らかの理由で私には不可解に思えます。したがって、誰かがどのようにto_rgba
、そしてfigimage
正確に機能するかについてコメントできれば、私も感謝します。深さ?:
- depth は、画像の下部からのベースラインのピクセル単位のオフセットです
前もって感謝します