問題タブ [seaborn]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Pythonのmatplotlibのseabornによるカーネル密度推定の下限
私は測定された木の直径のコレクションを持っており、カーネル密度の推定値を python の上に重ねてヒストグラムをプロットしようとしています。seaborn モジュールを使用すると、これを非常に簡単に行うことができますが、負の数に対して kde をゼロにするように指定する方法が見つかりません (ツリーは負のツリー直径を持つことができないため)。
私が現在持っているのはこれです:
distplot が呼び出す関数である seaborn.kdeplot を見てきましたが、有用なものが見つかりません。これが seaborn で実行できるかどうか、そうでない場合は matplotlib でより一般的に実行できるかどうかを知っている人はいますか?
kde pyplot.plot() を pyplot.hist() でオーバーレイする方法がわからなかったので、seaborn を使い始めただけです。
seaborn - subplots_adjust with seaborn.regplot
を使用するseaborn.regplot
と、xlabel と ylabel と yticklabels は実際には切り取られます。つまり、表示されません。通常、私はそうするだろう
これを修正します。ただし、これは数値に影響を与えていないようです。
私は何を間違っていますか?
python - seaborn を使用して、matplotlib プロットに補助グリッド線を追加します
私は、Matplotlib を使用して見栄えの良いプロットを作成するための Seaborn パッケージのファンです。しかし、プロットに小さなグリッド線を表示する方法がわかりません。
与えます:
ここで何か考えはありますか?また、表示される Seaborn グリッド線のスタイルを調整する方法についての考えも...特に、それらをより狭くしたいと思います。
python - matplotlib と seaborn 軸を破棄する方法
プロットで軸をオンまたはオフにしたり、軸のサイズを適切に変更したりするのが困難です。私はいくつかのスレッドをたどりましたが、私の方法は次のとおりです。
しかし、私の図は依然として上部と右側に軸があり、軸のサイズ変更による奇妙なギャップがあります。
python - コンポーネントが積み上げられたヒストグラム
過去 90 日間、毎日測定した値があるとします。値のヒストグラムをプロットしたいのですが、閲覧者が過去 90 日間の特定の重複しないサブセットにわたって測定値が蓄積された場所を簡単に確認できるようにしたいと考えています。これを行うには、ヒストグラムの各バーをチャンクに「分割」します。最初の観測用に 1 つのチャンク、より最近の観測用に 1 つ、最新の観測用に 1 つ。
これは の仕事のように聞こえますdf.plot(kind='bar', stacked=True)
が、詳細を正しく理解するのに苦労しています。
これが私がこれまでに持っているものです:
そして、それは私に与えます:
このグラフにはいくつかの欠点があります。
- バーが間違った順序で積み上げられています。
last5
上とnext15
真ん中にある必要があります。つまり、 の列の順序で積み重ねる必要がありますforhist
。 - バーの間に水平スペースがあります
- x 軸は、ビンが表す値を示すものではなく、整数でラベル付けされています。私の「最初の選択」は、実行した場合とまったく同じように x 軸にラベルを付けることです
data['values'].hist()
。私の「2番目の選択肢」は、x軸に「ビン名」のラベルを付けることですpd.cut(data['values'], 15)
。私のコードでは、labels=False
そうしないと、ビンのエッジ ラベルが (文字列として) バー ラベルとして使用され、これらがアルファベット順に配置され、グラフが基本的に役に立たなくなるため、使用しました。
これにアプローチする最良の方法は何ですか?これまで非常に不器用な関数を使用していたように感じます。
python - 高さの合計が 1 になるようにヒストグラムをプロットする
これは、この回答に対するフォローアップの質問です。正規化されたヒストグラムをプロットしようとしていますが、y 軸の最大値として 1 を取得する代わりに、異なる数値を取得しています。
配列 k=(1,4,3,1) の場合
このヒストグラムを取得しましたが、これは正規のようには見えません。
別の配列の場合 k=(3,3,3,3)
最大y値が10のこのヒストグラムを取得します。
異なる k の場合、normed=1 または normed=True であっても、y の最大値が異なります。
データに基づいて正規化が (機能する場合) 変更されるのはなぜですか? また、y の最大値を 1 にするにはどうすればよいですか?
アップデート:
私は、バーの高さがmatplotlibで合計1になるヒストグラムをプロットし、非常に奇妙な結果を得ることから、 Carsten Königの回答を実装しようとしています:
結果:
私は何を間違っていますか?
python - Python (Pandas) で積み上げ棒グラフのクラスタを作成する方法
だからここに私のデータセットがどのように見えるかです:
データフレームごとに積み上げ棒グラフを作成したいのですが、インデックスが同じであるため、インデックスごとに 2 つの積み上げ棒グラフを作成したいと考えています。
両方を同じ軸にプロットしようとしました:
でも重なります。
次に、最初に2つのデータセットを連結しようとしました:
しかし、ここではすべてが積み上げられています
私の最善の試みは:
与える:
これは基本的に私が望むものですが、バーを
(df1,A) (df2,A) (df1,B) (df2,B) など...
トリックがあると思いますが、見つかりません!
@bgschillerの回答の後、私はこれを得ました:
これはほとんど私が欲しいものです。視覚的に明確にするために、バーをindex でクラスター化したいと思います。
おまけ: x-label が冗長ではない、次のようなもの:
助けてくれてありがとう。