1

オブジェクトを表示できるようにしたいと思います。私のmatplotlibグラフでは、それを「スロープ」と呼んでいます。例えば:

import numpy as np
import matplotlib.pyplot as plt

range1 = a[(-5. <= a) & (-3. >= a)]
range2 = b[(-5. <= a) & (-3. >= a)]

'''Calculate slope value from endpoints in the data range (linear).'''

xslopeentry1 = range1[0]
xslopeentry2 = range1[-1]
yslopeentry1 = range2[0]
yslopeentry2 = range2[-1]
Slope = (yslopeentry2-yslopeentry1)/(xslopeentry2-xslopeentry1)

plt.plot(range1,range2)
plt.show()

では、プロットで取得した「勾配」の値を「印刷」または表示するにはどうすればよいでしょうか。

4

1 に答える 1

3

matplotlib にテキストを追加するには、いくつかのオプションがあります。それらの最良の説明は、ドキュメンテーションから得られます。

あなたの目的のために、理にかなっているかもしれない3つのオプションがあります:

1.)軸に対するテキスト:

matplotlib.pyplot.text(Slope,x,y)

ここで、x と y は軸に対するテキストの座標です。

2.)図に関連するテキスト:

matplotlib.pyplot.figtext(Slope,x,y)

ここで、x と y は図に対するテキストの座標です

3.)注釈:

これにより、特定のデータ ポイントを参照するピース テキスト アノテーションが作成されます。ここではあまり意味がありませんが、勾配に関連する線を指す矢印が必要な場合は、矢印を簡単に作成できます。

matplotlib.pyplot.annotate(Slope, xy=(xx, yy), xytext=(x, y),
        arrowprops=dict(facecolor='black', shrink=0.05))

ここで、x と y はテキスト座標で、xx、yy は矢印が指す点の座標です。

**上記の例は、勾配の値のみをプロットに配置することに注意してください。代わりに "Slope: value" が必要な場合は、上記の "Slope" を次のように置き換えます。

"Slope: {0}".format(Slope)
于 2012-12-29T06:18:56.697 に答える