2012-01-20 33 views
14

私はwxPythonのデータセットから読み込み、さまざまな種類のデータをオンザフライで簡単に解析し、さまざまな組み合わせのデータセットをmatplotlibキャンバスにプロットしています。私は、後でより洗練された分析のために、現在プロットされたデータをファイルにダンプする機会を持っていたいと思います。matplotlibプロットからデータを抽出する方法

問題はmatplotlibに、現在matplotlib.Figureにプロットされているデータへのアクセスを許可するメソッドがありますか?

答えて

19

プロットされる前にデータがダンプされるようにあなたが直接ソーススクリプトを変更することができますので、プロットに入る。それが私がこれをやりたいと思う方法です。あなたはプロットからデータを取得する必要がない場合でも、参考のために、私は、これはそれを

gca().get_lines()[n].get_xydata() 

を行う必要がありますまた、あなたがデータを個別に設定し、xとyを得ることができると思う:

line = gca().get_lines()[n] 
xd = line.get_xdata() 
yd = line.get_ydata() 
+0

ありがとう、私はそれがすべきだと思います。プロットのデータをデータソースでダンプすることを好む理由を知りたい場合は、@Jacubへの私のコメントを参照してください。 –

+0

なぜ 'mpl_toolkits.mplot3d.art3d.Line3Dオブジェクト'に 'get_zdata()'がありませんか? z値を抽出できません。 :-( –

+0

@SibbsGamblingあなたはmatplotlibの開発者と一緒にいなければならないだろう。 –

1

そのPythonのは、ヤクブは、それを送信したソースから直接データを書き込むためにPythonスクリプトの変更についての権利である

+3

私が知っていますしかし、最初に、データは多くの場所からプロットに送信され、プロット中に変更されます。私はプロットされたデータのすべての変更を追跡する必要があります。そして2番目に - 私はデータをダンプする必要はありません*それがプロットされるたびに*。最初に興味深いものを見つけて、NavigationToolbarのボタンを押してファイルにエクスポートしたいと思います。 NavigationToolbarはFigureCanvasにリンクされているため、ボタンは図のプロパティとメソッドにシームレスにアクセスできます。だから私はプロットからデータをダンプする方法を尋ねたのです。 –

+2

これは、ユーザーがデータをエクスポートすることを事前に知っていて、データが静的である場合にのみ機能します。まれに私は言うだろう。 – Schollii

関連する問題