2017-01-18 5 views
-1

alles ist im Titel, wie man die Schriftgröße der Zecken mit pyqtgraph ändern?Wie man Ticks Schriftgröße eines Diagramms ändert mit PyQtgraph

Thx

+0

alles ist wahrscheinlich in der doc. Vielleicht als dein Code? und deine Prüfungen? – iFlo

+0

Alles ist in Google! Inwiefern hilft das nicht? Bitte stellen Sie sicher, dass Sie [die Tour] (http://stackoverflow.com/tour) besucht haben und insbesondere [Wie stelle ich eine Frage?] Gelesen haben (http://stackoverflow.com/help/how-to-ask) . – ImportanceOfBeingErnest

+0

Tut mir leid, dass ich nicht genau genug bin. Die Dokumentation von pyqtgraph hat mir weder geholfen noch gegoogelt. Ich habe einen Beitrag im pyqtgraph-Support-Forum gesehen, der angibt, die setStyle-Funktion mit dem Schlüsselwort 'tickFont' zu verwenden, aber ich kann nicht herausfinden, wie man es richtig benutzt. Also wenn ich mein Diagramm mit self.my_plot = pg.PlotWidget() erstelle und dann self.my_plot.setStyle (xxx) verwende, was sollte ich anstelle von xxx verwenden, um zB eine Schriftgröße zu haben, die doppelt so groß ist wie die Originalgröße? – Gregos38

Antwort

2

Ich denke, die einzige Möglichkeit, die Schriftgröße des ticklabels in pyqtgraph zu ändern, ist eine neue Schriftart in PyQt zunächst erstellen und die Schriftgröße auf mich gesetzt. Dann kann diese Schriftart auf die Ticks angewendet werden.

font=QtGui.QFont() 
font.setPixelSize(20) 
plot.getAxis("bottom").tickFont = font 

Anfangs hätte ich gedacht, dass so etwas wie
plot.getAxis("bottom").setStyle(tickFont = font)
sollte auch funktionieren, aber aus irgendeinem Grund ist es nicht.

Sobald die Schriftgröße zugenommen hat, kann es sinnvoll sein, auch den tickOffset anzupassen. Finden Sie einen vollständigen laufenden Code ist unten.

import numpy as np 
from pyqtgraph.Qt import QtGui, QtCore 
import pyqtgraph as pg 


app = QtGui.QApplication([]) 

x = np.linspace(-50, 50, 1000) 
y = np.sin(x)/x 

win = pg.GraphicsWindow() 
plot = win.addPlot(x=x, y=y, title="Plot") 
plot.setLabel('bottom', "some x axis label") 

font=QtGui.QFont() 
font.setPixelSize(20) 
plot.getAxis("bottom").tickFont = font 
plot.getAxis("bottom").setStyle(tickTextOffset = 20) 


if __name__ == '__main__': 
    import sys 
    if (sys.flags.interactive != 1) or not hasattr(QtCore, 'PYQT_VERSION'): 
     QtGui.QApplication.instance().exec_() 

enter image description here

+0

Es funktioniert perfekt! Danke vielmals – Gregos38

Verwandte Themen