[解決済み] Matplotlibの対話型図形の保存
質問
Matplotlibの図を保存して、再び開いたときに典型的な相互作用を復元できるような方法はあるでしょうか?(MATLABの.fig形式のような?)
私は、これらのインタラクティブな図を生成するために、同じスクリプトを何度も実行していることに気づきました。または、プロットのさまざまな側面を表示するために、複数の静的な PNG ファイルを同僚に送っています。私はむしろ図オブジェクトを送り、彼ら自身にそれを操作させたいと思っています。
どのように解決するのですか?
これは素晴らしい機能ですが、AFAIKではMatplotlibに実装されていませんし、数値の保存方法の関係で自分で実装するのは難しいでしょう。
私は、(a) データの処理と図の生成を分離し(データをユニークな名前で保存する)、図生成スクリプトを書き(保存したデータの指定ファイルを読み込む)、適当に編集する、または (b) PDF/として保存する、のどちらかを提案します。 SVG / ポストスクリプト のような空想的な図形エディタで編集してください。 アドビイラストレータ (または インクスケープ ).
EDITポスト2012年秋 : 下記で他の方が指摘されているように(これが認められた答えなのでここで言及しますが)、バージョン1.2以降のMatplotlibでは数値のピクルスが可能でした。 そのため リリースノートには とあるように、これは実験的な機能であり、ある Matplotlib のバージョンで図を保存し、別のバージョンで開くことはサポートされていません。 また、信頼できないソースから pickle を復元することは、一般的に安全ではありません。
(最初に重要なデータ処理を必要とし、数ヶ月後、例えば科学出版のための査読中に微調整する必要があるかもしれない)プロットを共有/後で編集するために、私はまだ(1)プロットを生成する前に、処理したデータ(プロットに入るもの)をファイルに保存するデータ処理スクリプトを持ち、(2) プロットを再作成する別のプロット生成スクリプト(必要に応じてあなたが修正)を持っているというワークフローを推奨します。 この方法では、プロットごとにスクリプトを実行して素早く再作成することができます(そして、新しいデータでプロットの設定を素早くコピーすることができます)。 とはいえ、図のピックリングは、短期的/インタラクティブ/探索的なデータ分析に便利かもしれません。
関連
-
Pythonによるjieba分割ライブラリ
-
PythonによるExcelファイルの一括操作の説明
-
[解決済み】なぜ「LinAlgError: Grangercausalitytestsから「Singular matrix」と表示されるのはなぜですか?
-
[解決済み] builtins.TypeError: strでなければならない、bytesではない
-
[解決済み] 'DataFrame' オブジェクトに 'sort' 属性がない
-
[解決済み】"No JSON object could be decoded "よりも良いエラーメッセージを表示する。
-
[解決済み] Matplotlibでプロットを表示するのではなく、画像ファイルに保存する。
-
[解決済み] IPythonノートブックmatplotlibプロットをインラインで行う方法
-
[解決済み】Matplotlibで図のタイトルと軸ラベルのフォントサイズを設定するには?
-
[解決済み] matplotlib のプロットでフォントサイズを変更する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
opencvとpillowを用いた顔認証システム(デモあり)
-
Python百行で韓服サークルの画像クロールを実現する
-
Python LeNetネットワークの説明とpytorchでの実装
-
[解決済み】ImportError: PILという名前のモジュールがない
-
[解決済み】csv.Error:イテレータはバイトではなく文字列を返すべき
-
[解決済み】"No JSON object could be decoded "よりも良いエラーメッセージを表示する。
-
[解決済み】インポートエラー。モジュール名 urllib2 がない
-
[解決済み] 'int'オブジェクトに'__getitem__'属性がない。
-
[解決済み】Flaskのテンプレートが見つからない【重複あり
-
[解決済み】 'numpy.float64' オブジェクトは反復可能ではない