LoginSignup
0
1

More than 5 years have passed since last update.

pyqtgraphのticksのラベルの更新方法

Posted at

まとめ

pyqtgraphのPlotItemの軸のラベルとticksのラベルを設定するにはAxisItemを使う。

背景

pyqtgraphを用いてグラフを描画したいとき、PlotItemを用意し、その中にグラフを描画することができる。
また、2次元データを表示する方法としてImageItemを与える方法があるが、デフォルトでは軸の値はデータ数に相当する。
この軸のticksに好きな値を設定したい。

方法

pyqtgraph.AxsItem()を使うことで、PlotItemの軸のラベルとticksのラベルをセットすることができる。
使い方はStack Overflowを参考に、次のようにする。

import pyqtgraph as pg

# レイアウトの用意
glw = pg.GraphicsLayoutWidget()

# 軸の用意。与えられるのはbottom, left, top, right
axBottom = pg.AxisItem(orientation="bottom")
# 軸のticksのラベルの用意。dict形式で与える
tickBottom = {0:-50, 50:0, 100:50}
# 軸のticksのラベルを設定する
axBottom.setTicks([tickBottom.items()])
# 軸のラベルの用意
labelBottom = "Value1"
# 軸のラベルを設定する
axBottom.setLabel(labelBottom)

# 別の軸を用意する
axLeft = pg.AxisItem(orientation="left")
# 以下、axBottomの場合と同様に設定する
...

# PlotItemの用意。PlotItemには後から軸を設定するメソッドがないようなので、この段階でPlotItemの軸を設定する。
p1 = glw.addPlot(
    axisItems={"bottom":axBottom, "left":axLeft}
)
...

# PlotItemに設定された軸のパラメータを後から更新する場合は、setLabelやsetTicksを利用する。
tickBottom_new = {0:-20, 50:30, 100:130}
ax.Bottom.setTicks([tickBottom_new.items()])
...

参考

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1