【Rで作図】軸を切断して途中を省略し、軸幅の割合を変える
ggplotで作った下記グラフ、一番高いバーのせいで、低いバーが見えにくくなっている。 なので、途中で棒をぶった切って、中間部を省略し、さらに上の方は間隔を狭めたい。 ……と思った時の備忘録。 軸を切断して途中を省略し、軸幅の割合を変える 使う関数は、scale_y_break()。 軸を切断して途中を省略する 試しに、15から19までを切断して省略してみる。 scale_y_break(c(15 […]
ggplotで作った下記グラフ、一番高いバーのせいで、低いバーが見えにくくなっている。 なので、途中で棒をぶった切って、中間部を省略し、さらに上の方は間隔を狭めたい。 ……と思った時の備忘録。 軸を切断して途中を省略し、軸幅の割合を変える 使う関数は、scale_y_break()。 軸を切断して途中を省略する 試しに、15から19までを切断して省略してみる。 scale_y_break(c(15 […]
ggplot2でグラフを描いたとき、Y軸タイトルを長ーくすると、2列に降りたくなる。 ▲ グラフの中にY軸タイトルが収まりきれない。。。 その方法の備忘録。 Y軸タイトルを2列にして、位置を調整する 正規表現「\n」で改行する。 # Y軸タイトルを2行に labs(x = "", y = "Thickness of the CA1 \n (ventral hippocampus) [μm]") 2 […]
以下に示すのは、ggplotを使って、平均値で棒グラフを作る方法。 前準備 パッケージのインストール あらかじめ、必要なパッケージをインストールしておく。 library(tidyverse) library("ggplot2") データフレームのインポート 使用するデータフレームをインポートする。 今回は、任意の場所に作っておいたxlsxファイルを使用。 # xlsxファイルの読み込み Data […]
下のようなグラフがあって、この背景を変更したいとき。 themeで変更する。 グラフの背景の変更 白 theme_classic() グレー+格子(白) theme_gray() 白+格子(グレー) theme_bw() 白+格子(黒) theme_linedraw() 白+格子(薄墨) theme_light() ダークグレー+格子 theme_dark() 白+格子(外枠なし) theme_m […]
ggplot2でグラフを作っていて、「レジェンドは要るけど、レジェンドタイトルは消したいな」と思って消した時の備忘録。 使う関数は「theme」のlegend.title = element_blank。 theme(legend.title = element_blank()) 無事に消えた。 全体のコードは下記。 ggplot(Data2, aes(x = Age, y = `XX posit […]
グラフを作っていて、「Facetのタイトルのフォントサイズを変更したい」と思って消した時の備忘録。 themeに”strip.text = element_text(size = ○○)”でサイズを指定すればOK。 theme(strip.text = element_text(size = 20)) size=20で追加してみたら、フォントサイズが大きくなった。 &nbs […]
グラフを作っていて、「レジェンド要らないな」と思って消した時の備忘録。 方法はいくつかあるけど、使い勝手が良かったのは、themeに “legend.position = “none”を追加する方法。 theme(legend.position = "none") これで、レジェンドが消えて、その分グラフの専有面積が水平方向に拡大した。 全体の […]
下記のようなグラフがあり、 これにプロットを重ねたい……でもただプロットするだけじゃなくて、各グループ内にいるオスとメスがプロットの形と色で区別できるようにしたい。 そんな場合の備忘録↓ グループ内でサブブループによってプロットの色と形を変える 1.サブグループの列を作り、レベル指定する まずは、プロットの色形を変えるためのサブグループ毎のデータを指定する。 今回の例では、”Dat […]
最近はどのジャーナルからも「棒グラフにはプロットを重ねるように」と言われると思う。 私自身、プロットしていないと気持ちが悪い。 で、その方法 ↓ 棒グラフにプロットを重ねる 棒グラフだけだと mean とかのデータを使うけど、プロットを重ねる時はボックスプロットなどと同じ様に生データのデータフレームを使う。 (コード内では、表の上にもっていきたい方を後ろの方に書く。) 棒グラフの部分は、 stat […]
下記グラフのx軸ラベルを斜めにしたい場合。 theme(axis.text.x = element_text(angle = 角度, hjust = 高さの調節)) を追加する。 theme(axis.text.x = element_text(angle = 45)) angle だけ指定すると、文字は真ん中で回転する。 なので、高さも指定。 theme(axis.t […]
下記のようにグラフを作った。 # bar graphs factor(Data_NFT_sum$Region, levels=c("Ipsi-Hipp", "Ipsi-Ctx" , "Cont-Hipp" , "Cont-Ctx" )) Data_NFT_sum %>% ggplot(aes(x = Sex, y = mean_NFT, fill = Group)) + geom_col(posi […]
とある棒グラフを作成。 このグラフにエラーバーを付けたい場合、 geom_errorbar() を追加する。 エラーバーをつける 標準偏差(standard deviation, SD) SDは、 dplyr::summarise(新規作成列名 = sd(参照データの列)) で求める。 dplyr::summarise(mean = mean(Data), sd = sd(Data)) で、このS […]
下記の様に棒グラフを作成。 # bar graphs Data$Group <- factor(Data$Group, levels=c("WTM", "PdM" , "WTF" , "PdF" )) Data$Region <- factor(Data$Region, levels=c("Ipsi-Hipp", "Ipsi-Ctx" , "Cont-Hipp" , "Cont-Ctx […]
ggplot (ggplot2) では色々なグラフがかけるけど、基本概念は「レイヤー構造」で作る、という事。 イメージは photoshop や illustrator のレイヤーと似てる。 ggplot() でグラフ作りを始め、 aes() でx, y 軸などを決定し、 その上に追加要素としてレイヤーを重ねていくイメージ。 できたグラフは ggsave() で出力する […]
あるデータのリバイスで、患者さんが最後に認知機能検査を受けた時期から亡くなるまでの期間が解析グループで差があるんじゃないか、とレビューアーから指摘された。 なので、その期間が各群で差がないことを示す検定結果をつける事に。 対応のない2群比較の場合は、 正規分布で等分散 → Student t-test(スチューデントのt検定、パラメトリック) 正規分布で等分散/不等分散両方OK → Welchi& […]
認知機能の変化を、LBD, AD, LBD+AD グループ毎に、LATE(+)とLATE(-)で分けて示したいと思い、下記のようにグラフを作製。 ```{r fig.width=6} filter(Data, complete.cases(LATE)) %>% ggplot(aes(x=MMSEtoDeath, y=MMSETotal)) + geom_line(aes(group = IN […]
R は色々なグラフィックスが作れて嬉しくなる。 作成した図表をそのまま R Markdown で出力できるのも魅力の一つだが、場合によっては、別のソフトで編集したいときも。 私の場合、Figures 等を作るときの最終的な整形は illustrator を使っている。 この時、R のグラフを EPS ファイルでの出力が必須。 後の編集が断然しやすい。 EPS ファイルで出力する方法: […]
facet_wrap で3グループのグラフに分けて、ボックスプロットを作った。 MMSE <- filter(Data, complete.cases(Disease), complete.cases(LBD_Subtype)) %>% ggplot(aes(x = Disease, y = MMSE)) + geom_boxplot(outlier.shape = NA) + ggb […]
例えば、Tgマウス(例はPdと記載)とWTマウスの解析で、 1つのグラフ内でオス(M)とメス(F)毎に固めて表示 Region(Ipsi-Hipp, Ipsi-Ctx, Cont-Hipp, Cont-Ctx)毎に複数のグラフに分けて表示 したい場合の備忘録。 1つのグラフ内でオス(M)とメス(F)毎に固めて表示 オスとメスに分けて解析したい場合。 Group という列を作って、”WT […]
データをグラフにするとき、 「これのデータは バイオリン プロット で表すのが最適。」 と思う時があります。 今回は、それを R で作るときの備忘録。 ggplot2 のインストール ggplot2 は、“The Grammer of Graphics” という体系に基づいて設計されたパッケージ。 Hadley Wickham氏が作成。 ggplot2の文法 グラフ = 座標 (ggplot) + […]
テーブルデータを取り込んだ後は、最初の6行、ディメンジョン、概要などを確認する。 データの取り込み 例えば、 コンソールに下記入力してデータを取り込む。 例えば、Dドライブにある”data.csv”というファイルを取り込む場合。 > data <- read.csv("D:/R/R directroy/data.csv", header=TRUE) 1行目はヘッ […]