1

使用時にpythonで太い幹線を作りたいplt.stem

これが私のコードです

import matplotlib.pyplot as plt
import numpy as np

N = 20

n = np.arange(0, 2*N, 1)

x = np.exp(-n/N)*np.exp(1j * 2*np.pi/N*n)

plt.stem(n,x.real) 

plt.show()

変更しましplt.stem(n,x.real,linewidth=10)たが、何も変わりませんでした。linewidthを設定する機能はありませんplt.stemか?

4

2 に答える 2

5

のドキュメントはplt.stem、関数がプロットによって作成されたすべての線オブジェクトを返すことを示しています。これを使用して、プロット後に手動で線を太くすることができます。

import matplotlib.pyplot as plt
import numpy as np

N = 20
n = np.arange(0, 2*N, 1)
x = np.exp(-n/N)*np.exp(1j * 2*np.pi/N*n)

markers,stems,base = plt.stem(n,x.real) 
for stem in stems:
    stem.set_linewidth(10)
plt.show()

結果

于 2016-09-02T12:15:33.653 に答える
4

plt.setp()これは、matplotlib ドキュメントのに示されているように、を使用して変更することもできます。このplt.setp()メソッドを使用すると、作成後にアーティスト オブジェクトのプロパティを設定できます。

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0.1, 2*np.pi, 10)
markerline, stemlines, baseline = plt.stem(x, np.cos(x), '-.')
plt.setp(stemlines, 'linewidth', 4)

plt.show()

ここに画像の説明を入力

于 2016-09-02T12:19:51.060 に答える