ggplot2

ggplot2で軸の書式設定をする際、文字列で指定するな俺

書式設定はたまにしか使わないのでうっかり文字列でlabels="comma"のように指定してしまう。 そして、よくわからないエラーが出て混乱する。 慌てるな、文字列じゃなくてlabels=commaのように指定すればいいだけなんだ。 > library("ggplot2") > library("sc…

ggplot2でbeeswarm(蜂群図)を描きたい

下記サイトにあるようなbeeswarm(蜂群図)を描きたい。 https://www.yodosha.co.jp/jikkenigaku/statistics_pitfall/pitfall_5.html そんな時はbeeswarmパッケージを使えば良い。 http://www.cbs.dtu.dk/~eklund/beeswarm/ だがggplot2でやりたい。 positio…

geom_pathで矢印を書く

geom_pathはめったに使わないので矢印が書けるとは知らなかった。 library(ggplot2) smp <- data.frame(id=rep(1:5,each=2), group=rep(2008:2009,5), x=rnorm(10), y=rnorm(10)) library(grid) ggplot(smp, aes(x=x,y=y,group=id,label=group)) + geom_path…

Rでぐにゃぐにゃしたプロットを描く

不真面目な話にかっちりとしたプロットは似合わない。 相応のプロットを描きたい。Rで描きたい。 xkcdパッケージで大体のところは描ける。 通常、折れ線グラフはxkcdline関数で描けるのだが定義域の変化に合わせて関数が変わるような場合には対応していなさ…

ggplot2とlatticeを共存させる

ggplot2オブジェクトとlatticeオブジェクトを同じ画面に描くにはgridExtraを使うと良い。 http://rpubs.com/dichika/gridExtra

ggplot2で作ったグラフにエクセルの様にラベルをつける

まあgeom_text使うだけなんですけど。 http://rpubs.com/dichika/ggplot2_label 追記 下記でご指摘いただいていた http://blog.goo.ne.jp/r-de-r/e/d9625828ce6a2d8beb13908e5e1b9080

水準をシンボルの形で分ける

色分けだと見にくい場合が多々ある。 シンボルで分ける方法(scale_shape_manual)を書いた。 まあ番号で指定するだけなんだけど。 http://rpubs.com/dichika/ggplot2_shape 追記(2012/7/12) いただいたコメントに応じて修正。 http://rpubs.com/dichika/ggp…

日付型の時の範囲指定

時系列で眺めている時に、特定の期間にフォーカスしたいことは多々あると思います。 xlimとかylimで範囲は指定するけれども、日付の時は日付型にしないとうまくいかない。 考えてみれば当たり前なんだけど、5分位はまったのでメモしておく。 ggplot(economic…

scale_datetimeがうまくいかなかったけど解決した

ggplot2でDate型のデータを用いた際のデフォルトの表示が気に入らない。 scale_x_datetime(format = "%Y-%m-%d")みたいに指定することで日付表示を変更できる、とサイトには書いてあるのだがうまくいかない。 が、POSIXct型に変更するとうまくいったのでメモ…

第1回:P1-10まで

PRMLを読み始めた。 ということで最初の方の図をトレース。 ggplot脳なのでggplotでやる。 library(ggplot2) x <- seq(0, 1, by=0.1) t <- sin(2*pi*x) + rnorm(n=11, mean=0, sd=0.5) M0 <- fitted(lm(t~1)) M1 <- fitted(lm(t~poly(x,1))) M3 <- fitted(lm…

ggplot2で関数を描画

通常、関数描画はcurve関数を使えば良い。 curve(x^2, -3, 3) curve(dnorm, -3, 3) これをggplot2で実現するためにはstat_functionを使えば良いが少しトリッキー。 定義域を一旦描画してgeom_blankで消した後、stat_functionで関数を描画する。 library(ggpl…

facet_gridのラベル名を変更する

(参照)http://wiki.stdout.org/rcookbook/Graphs/Facets%20(ggplot2)やり方は以下の2つ。 ラベル名を変更する関数を定義してfacet_gridのlabellerに指定する データの因子水準を変更する

optsメモ

凡例だのラベルだのいじることが多々あるのでメモ。 last_plot() + opts(axis.text.x=theme_text(angle=90, size=20, hjust=1, vjust=1), axis.text.y=theme_text(angle=90, size=20, hjust=1, vjust=1), plot.title=theme_text(angle=90, size=20, hjust=1,…

ウォーホルのアレっぽいものを作ってみる

ggplot2のテーマ練習がてら。画像がつぶれてもうた上になんか全然違うけどまあよい。もう少しよくする。 コードは以下の通り。 library(ReadImages) library(ggplot2) data <- read.jpeg("maririn.jpg") #画像ファイルを指定 data #imagematrixに変換されて…

ggplot2で五代目住職

MacのSnow Leopardで画像処理ができるRのパッケージって意外と少ない。rimageもbiOpsもEBImageも使えない。なんかないかと探してたらReadImagesなるものを発見したので使ってみる。 library(ReadImages) library(ggplot2) data <- read.jpeg("14.jpg") #画…

ggplot2で複数グラフ表示

ggplot2で作った複数のグラフを並べたいというケースは多々あると思います。 同一データでグループごとにグラフを分けて並べる場合 facetを使って並べます。以下使い分け。 単純に並べていく時はfacet_wrap 格子表示する時はfacet_grid facet_wrapは並べ方を…

ggplot2手習いその1

作者のサイトをみれば大体のことは書いてあるのだが、いかんせん使い分けがわかりにくいものもある。 なので自分用に使い方をまとめていく。まずはパッケージとデータ読み込み #パッケージ読み込み library(ggplot2) #データは適当に作った set.seed(1) x <-…

ggplot2と他パッケージとのコンフリクト

ggplot2の他に別のライブラリ(partyとか)を読みこむと The following object(s) are masked from 'package:plyr': empty こういう状況になって、グラフを描くとき 以下にエラー function (classes, fdef, mtable) : unable to find an inherited method fo…

日付データの表示方法

scale_x_date(lim = c(as.Date("2005-1-1"), as.Date("2005-12-31")), format="%m") 大きな目盛、小さな目盛を区別して表示したい場合はmajorとかminorで指定。

メモ:ラベルの付いた横棒グラフをつくる

棒グラフ(頻度は既に求めている場合)→geom_bar(stat="identity") 横に回転させる→coord_flip ラベルをつける→ggplot(data=data, aes(x=x, y=y, label=hoge))とlabelを指定しておいて、geom_text(hjust=, vjust=)。hjust/vjustで位置は調整する。