タグ付けされた質問 「matplotlib」

MatplotlibはPython用のプロットライブラリで、インタラクティブに使用したり、スタンドアロンGUIに組み込んだりできます。コンパクトな「pyplot」インターフェイスは、MATLAB®のプロット関数に似ています。

9
matplotlibでカラーマップの中点を定義する
カラーマップの中間点を設定したい、つまりデータが-5から10になり、ゼロを中間にしたい。それを行う方法は、正規化をサブクラス化して標準を使用することだと思いますが、例が見つからず、正確に何を実装する必要があるのか​​がわかりません。

3
pandas / matplotlib棒グラフにカスタムカラーを与える方法
Excelの代わりにpandas / matplotlibを使用して、積み上げ棒グラフを生成し始めました。問題が発生しています (1)デフォルトのカラーマップには5色しかないため、5つ以上のカテゴリがある場合は、色が繰り返されます。より多くの色を指定するにはどうすればよいですか?理想的には、開始色と終了色のグラデーション、およびその間にn色を動的に生成する方法はありますか? (2)色があまり視覚的に心地よいものではありません。n色のカスタムセットを指定するにはどうすればよいですか?または、グラデーションも機能します。 上記の両方のポイントを示す例を以下に示します。 4 from matplotlib import pyplot 5 from pandas import * 6 import random 7 8 x = [{i:random.randint(1,5)} for i in range(10)] 9 df = DataFrame(x) 10 11 df.plot(kind='bar', stacked=True) そして出力はこれです:

4
matplotlibで空白のサブプロットを作成するにはどうすればよいですか?
matplotlibでサブプロットのグループ(たとえば、3 x 2)を作成していますが、データセットが6つ未満です。残りのサブプロットを空白にするにはどうすればよいですか? 配置は次のようになります。 +----+----+ | 0,0| 0,1| +----+----+ | 1,0| 1,1| +----+----+ | 2,0| 2,1| +----+----+ これは数ページ続く場合がありますが、最後のページでは、たとえば、2,1ボックスへの5つのデータセットが空になります。しかし、私はその数字を次のように宣言しました: cfig,ax = plt.subplots(3,2) したがって、サブプロット2,1のスペースには、目盛りとラベルが付いたデフォルトの軸のセットがあります。そのスペースをプログラムで空白にし、軸を含まないようにするにはどうすればよいですか?

2
Imshow:範囲と側面
私は3Dデータセットを通してスライスと投影を視覚化するソフトウェアシステムを書いています。私が使用しているmatplotlibと、特にimshow私は私の分析コードから取り戻す画像バッファを可視化します。 画像にプロット軸で注釈を付けたいので、imshow提供するextentキーワードを使用して、画像バッファのピクセル座標をデータ空間座標系にマッピングします。 残念ながら、matplotlibユニットについては知りません。(人工的な例をとって)次元が1000 m X 1 km。の画像をプロットしたいとします。その場合、範囲はのようになります[0, 1000, 0, 1]。画像配列が正方形であっても、extentキーワードによって示されるアスペクト比は1000であるため、結果のプロット軸のアスペクト比も1000になります。 範囲キーワードを使用して取得した自動生成された主要な目盛りとラベルを維持しながら、プロットのアスペクト比を強制することは可能ですか?

4
matplotlibでバーの高さが合計1になるようにヒストグラムをプロットするにはどうすればよいですか?
matplotlibを使用して、ベクトルから正規化されたヒストグラムをプロットしたいと思います。私は以下を試しました: plt.hist(myarray, normed=True) と同様: plt.hist(myarray, normed=1) ただし、どちらのオプションも[0、1]からy軸を生成せず、ヒストグラムのバーの高さが合計して1になります。このようなヒストグラムを生成したいのですが、どうすればよいですか?

2
matplotlibのimshowを使用してNaN値を特別な色としてプロットするにはどうすればよいですか?
matplotlibでimshowを使用してデータをヒートマップとしてプロットしようとしていますが、値の一部はNaNです。NaNをカラーマップにない特別な色としてレンダリングしたいのですが。 例: import numpy as np import matplotlib.pyplot as plt f = plt.figure() ax = f.add_subplot(111) a = np.arange(25).reshape((5,5)).astype(float) a[3,:] = np.nan ax.imshow(a, interpolation='nearest') f.canvas.draw() 結果の画像は、予期せずすべて青(ジェットカラーマップの最低色)になります。ただし、次のようにプロットを行うと、次のようになります。 ax.imshow(a, interpolation='nearest', vmin=0, vmax=24) -それならもっと良いものが得られますが、NaN値はvminと同じ色で描画されます... NaNを特別な色(例:灰色または透明)で描画するように設定できる優雅な方法はありますか?
85 python  matplotlib  nan 

5
Matplotlibプロットの線を削除する方法
実際にガベージコレクションを取得してメモリを解放するような方法で、matplotlib軸の1つまたは複数の行を削除するにはどうすればよいですか?以下のコードは行を削除しているように見えますが、メモリを解放することはありません(を明示的に呼び出した場合でもgc.collect()) from matplotlib import pyplot import numpy a = numpy.arange(int(1e7)) # large so you can easily see the memory footprint on the system monitor. fig = pyplot.Figure() ax = pyplot.add_subplot(1, 1, 1) lines = ax.plot(a) # this uses up an additional 230 Mb of memory. # can I get the …

8
gnuplot vs Matplotlib
gnuplot-pyを使用してTomcatログをグラフ化するプロジェクトを開始しました。具体的には、特定のリクエストをメモリ割り当てとガベージコレクションに関連付けます。Pythonグラフ作成のためのgnuplot-pyとMatplotlibの集合的な知恵は何ですか。私が聞いたことがないより良いグラフライブラリはありますか? 私の一般的な考慮事項は次のとおりです。 gnuplotには大量のドキュメントがありますが、gnuplot-pyにはありません。Matplotlibのドキュメントコミュニティはどれくらい良いですか? gnuplotでできることはありますが、gnuplot-pyではできませんか? Matplotlibはより良いPythonサポートを持っていますか? どちらにも大きなショーストップバグはありますか?迷惑? 現在、gnuplotは数十万のポイントをグラフ化しています。これを数百万にスケールアップすることを計画しています。問題が発生する可能性がありますか?Matplotlibはこれをどの程度うまく処理しますか? 使いやすさ、gnuplotとMatplotlibのターンアラウンドタイム? 既存のgnuplot-pyコードをMatplotlibに移植するのはどれほど簡単でしょうか? このタスクにどのようにアプローチしますか?

4
Pythonでポイントがポリゴン内にあるかどうかを確認する最も速い方法は何ですか
ポイントがポリゴン内にあるかどうかを確認する2つの主な方法を見つけました。1つはここで使用されているレイトレーシング方法を使用することです。これは最も推奨される答えです。もう1つはmatplotlibを使用path.contains_pointsすることです(これは私には少しわかりにくいようです)。たくさんのポイントを継続的にチェックする必要があります。これらの2つのいずれかが他よりも推奨されるかどうか、またはさらに優れた3番目のオプションがあるかどうかを誰かが知っていますか? 更新: 2つのメソッドを確認したところ、matplotlibの方がはるかに高速に見えます。 from time import time import numpy as np import matplotlib.path as mpltPath # regular polygon for testing lenpoly = 100 polygon = [[np.sin(x)+0.5,np.cos(x)+0.5] for x in np.linspace(0,2*np.pi,lenpoly)[:-1]] # random points set of points to test N = 10000 points = zip(np.random.random(N),np.random.random(N)) # Ray tracing def ray_tracing_method(x,y,poly): n …

2
グリッド間隔を変更し、Matplotlibで目盛りラベルを指定します
グリッドプロットでカウントをプロットしようとしていますが、どうすればよいかわかりません。したい: 5の間隔で点線のグリッドがある メジャーティックラベルを20ごとにのみ持つ ティックをプロットの外側に配置したいと思います。 それらのグリッド内に「カウント」を含める ここやここのような潜在的な重複をチェックしましたが、それを理解することができませんでした。 これは私のコードです。 import matplotlib.pyplot as plt from matplotlib.ticker import MultipleLocator, FormatStrFormatter for key, value in sorted(data.items()): x = value[0][2] y = value[0][3] count = value[0][4] fig = plt.figure() ax = fig.add_subplot(111) ax.annotate(count, xy = (x, y), size = 5) # Overwrites and I only get …

11
PythonでROC曲線をプロットする方法
ロジスティック回帰パッケージを使用してPythonで開発した予測モデルの精度を評価するために、ROC曲線をプロットしようとしています。真陽性率と偽陽性率を計算しました。ただし、matplotlibAUC値を使用してこれらを正しくプロットし、計算する方法を理解できません。どうすればそれができますか?

2
Matplotlib:現在の数値を設定する方法は?
これは簡単な質問だといいのですが、現時点では理解できません。matplotlibを使用して2つの図を表示し、それらをインタラクティブに使用したいと思います。私は以下でフィギュアを作成します: import matplotlib import pylab as pl f1 = pl.figure() f2 = pl.figure() また、MATLABのようなpyplotインターフェイスを使用して、両方の図をプロットおよび描画できます。と current_figure = pl.gcf() クリックした図に応じて、pyplotインターフェイスで現在アクティブな図を特定できます。次に、pyplotインターフェイスを使用して最初の図に何かを描画したいのですが、現在の図はどちらでもかまいません。だから何かのようなものがあります pl.set_current_figure(figure) または回避策はありますか?(私はオブジェクト指向インターフェースを使用できることを知っていますが、インタラクティブなものには、plot(x、y)のようなコマンドを使用する方がはるかに優れています)

11
matplotlibでランダムな色を生成する方法は?
プロット関数に渡すためのランダムな色を生成する方法の簡単な例は何ですか? ループ内でスキャッターを呼び出しており、各プロットに異なる色を使用したいと考えています。 for X,Y in data: scatter(X, Y, c=??) c:色。cは、単一の色フォーマット文字列、長さNの色指定のシーケンス、またはkwargsを介して指定されたcmapとnormを使用して色にマップされるN個の数値のシーケンスです(以下を参照)。cは、カラーマップされる値の配列と区別がつかないため、単一の数値RGBまたはRGBAシーケンスであってはならないことに注意してください。cは、行がRGBまたはRGBAである2次元配列にすることができます。

2
サブプロットのPythonxticks
単一のimshowプロットをプロットすると、使用できます fig, ax = plt.subplots() ax.imshow(data) plt.xticks( [4, 14, 24], [5, 15, 25] ) xtickラベルを交換します。 今、私はをimshow使用して12のプロットをプロットしています f, axarr = plt.subplots(4, 3) axarr[i, j].imshow(data) これらのサブプロットの1つだけでxticksを変更するにはどうすればよいですか?サブプロットの軸にアクセスできるのはaxarr[i, j]。plt1つの特定のサブプロットだけにアクセスするにはどうすればよいですか?

1
Plt.showは完全グラフを表示しますが、savefigは画像をトリミングしています
私のコードは画像をファイルに正常に保存していますが、重要な詳細を右側からトリミングしています。答えは、それがために発生した場合、この問題を修正するために存在するplt.showが、それはsavefig間違って、この例のグラフを生成しているコマンド。これはどのように修正できますか? 私のコードの関連サンプル: import glob import os for file in glob.glob("*.oax"): try: spc_file = open(file, 'r').read() newName = file[6:8] + '-' + file[4:6] + '-' + file[0:4] + ' ' + file[8:12] + ' UTC (Observed) - No Sea Breeze Day' plt.title(newName, fontsize=12, loc='left') plt.savefig('X:/' + newName + '.png') plt.show() except …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.