問題タブ [geom-text]
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.
r - アステリックスRバーggplot
コントロールと比較して両方のバーにラベルを付け、重要性を強調するためにアスタリスクで条件間のバーにラベルを付けようとしています。
横棒グラフを使用している場合、geom_text によって配置されたアスタリスクの位置のデフォルト設定は、各サンプルの 2 つの条件の中間にあります。条件間の比較 (p2) にはこれが必要ですが、各バー内に別のレベルの有意性 (対照、p1 に対して) から別のアスタリスクのセットを配置したいと考えています。
私は hjust を試しましたが、これはグラフのサイズに関連しているため、グラフのサイズが変更されるたびに astrix の位置も変更されます。
コード例:
ありがとうございました
r - ggplot2 ヒストグラム: ggplot2 を使用してヒストグラム バーにテキスト注釈を追加する方法
次のヘッダー名を持つデータ フレームを使用しています。
次のコードを使用して、特定の細菌株内で見つかった遺伝子の数を示すグラフを取得します。
少しわかりにくいかもしれませんが、たとえば、いくつかの菌株には多色のバーがあります。これは、その菌株の遺伝子の一部が細菌の染色体以外のソース (または細菌が複数の染色体を持っている場合は複数の染色体) に由来することを示しています。 . 適切な位置で遺伝子のソース (「DNA_Source」) に従ってバーにラベルを付けたいと思います。
これは私を近づけますが、y軸からカウントを削除し(そして左下側に「アイデンティティ」という単語を追加します)、貢献を互いに重ねてラベル付けするので、そうでない限り読むことができません同じ言葉。
最初の画像のように y 軸にラベルを付け、2 番目の画像にラベルを付けたいと思いますが、これらのラベルをヒストグラムの対応する色部分内に表示したいと思います (ここと視覚的に似ています:積み重ねられたデータ値の表示ggplot2 の棒グラフ) ですが、ggplot2 パッケージを使用して実現したいと考えています。
これが明確であることを願っています。助けていただければ幸いです。よろしくお願いします。
ここに少しのデータがあります (tail(dput(myDF[c(2, 3, 5)])))...
r - ggplot2棒グラフのラベルに水平ドッジを追加するには?
かなり単純な棒グラフ (つまり、geom_bar) にラベルを追加しようとしています。 position_dodge()
withingeom_text()
は、ラベルの垂直方向の間隔を修正しますが、水平方向の間隔は修正しません。ggplot2
バーの上にラベルを適切に分散させるにはどうすればよいですか?
棒グラフは次のとおりです。
temp.dat
これを完全に機能する例にするために必要な内容は次のとおりです。
r - ラベルが互いに重なっている場合、ラベルの位置を geom_text で自動的に変更します
ポイントの代わりにラベルを使用して ggplot グラフを作成したいのですが、それらが重なり合っているため、読み取ることができません。互いに上書きしないように自動的にシフトする良い方法はありますか?
ありがとうございました
r - ggplot2: プロットで geom_text のサイズを変更し、geom_bar 内のテキストを強制/適合します
これは、実際には 2 つの質問を 1 つにまとめたものです (SO 規則に違反するかどうかはわかりませんが、とにかく)。
最初の質問は、 を に強制的geom_text
に収めるにはどうすればよいgeom_bar
ですか? (プロットされた値に応じて動的に)
周りを見回すと、私が見つけた解決策はラベルのサイズを変更していました. それは確かに機能しますが、すべての場合に当てはまるわけではありません。特定のプロットのサイズを変更して、テキストがバー内に収まるようにすることができますが、データが変更された場合は、テキストのサイズを手動で再度変更する必要がある場合があります。私の実際の問題は、絶えず変化するデータ (毎日) に対して同じプロットを生成する必要があることです。そのため、各プロットのサイズを実際に手動で調整することはできません。
データの関数としてラベルのサイズを設定してみました。完全ではありませんが、多くの場合に機能します。
しかし、ラベルがバー内に収まる場合でも、プロットのサイズを変更するとすべてが台無しになるという別の問題があります。調べてみると、ggplotのドキュメントにもありました
ラベルには高さと幅がありますが、データ単位ではなく物理単位です。そのプロットで占有するスペースの量は、データ単位で一定ではありません。プロットのサイズを変更すると、ラベルは同じサイズのままですが、軸のサイズが変わります。
2 番目の質問: このデフォルトの動作を変更して、プロットに合わせてラベルのサイズを変更することはできますか?
また、最初の質問を改善させてください。物理単位とデータ単位の間の巧妙な関係を使用してテキストのサイズを動的に設定し、geom_text
を 内に収まるように強制することは可能ですか?geom_bar
したがって、良い習慣に従うために、再現可能な例を次に示します。
このコードは、次のプロットを生成します。
単純にプロットのサイズを変更すると、「ラベルは同じサイズのままですが、軸のサイズが変更されます」ため、ラベルがバーに収まるようになります (ラベルが小さすぎる可能性があります)。
それで、これは私の2番目の質問です。ラベルのサイズも変更され、バーに対する縦横比が保たれるとよいでしょう。これを達成する方法、またはそれが可能かどうかについてのアイデアはありますか?
わかりましたが、バー内にラベルを合わせる方法に戻ると、最も簡単な解決策はラベルのサイズを設定することです。
繰り返しますが、これは以下に示すように機能しますが、データの変更に対して保守可能ではなく、堅牢でもありません。
たとえば、異なるデータを使用してプロットを生成するまったく同じコードが壊滅的な結果をもたらします。
例を続けて、ラベルのサイズを x 軸のカテゴリ数の関数として設定します。しかし、あなたは要点を理解しています。おそらく、あなたのggplot2
専門家の 1 人が私にアイデアを提供してくれるでしょう。
r - ggplot2 の for ループで geom_text を使用する
geom_text() 関数を使用して、ggplot グラフにテキスト ラベルのリストを表示したいと考えています。
それらのラベルの位置はリストに保存されます。
以下のコードを使用すると、2 番目のラベルのみが表示されます。
このコードの何が問題なのですか?