2017-11-08 15 views

答えて

0

plt.stemプロットのベースラインが

markerline, stemlines, baseline = plt.stem(x, np.cos(x), '-.') 

、関数呼び出しから返されたあなたが[0,1]すべきラインのデータを設定し、yaxis_transformを使用することができ、それらの座標になるように軸座標として解釈される。

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(baseline, 'color', 'r', 'linewidth', 2) 

baseline.set_xdata([0,1]) 
baseline.set_transform(plt.gca().get_yaxis_transform()) 

plt.show() 

enter image description here

+0

を[、最小完全、かつ検証例]を提供してくださいありがとう - これはうまくいきました。私の貧しい初期のポストに申し訳ありません---それを掃除するためのおかげで。私は何年ものMATLABから来て、ちょうど最近、Pythonを使用しようと試み始めました。どのようにしてこの解決策を見つけましたか?私はベースラインハンドルのプロパティに関するドキュメントを見つけることができませんでした。 – jboss

+0

あなたは正しいですが、この解決法はそれほど明白ではなく、 'get_yaxis_transform()'をすでに使っていることによってのみ知ることができます。だから短いです:経験。しかしながら、ステムプロットが3つのオブジェクトを返すという事実は、ドキュメントから明らかです。また、通常、戻り値の型を調べて、返されたオブジェクトについてドキュメントで読むことができます。 – ImportanceOfBeingErnest

関連する問題