0

今、ggplot2 でプロットを描画します。

プロットに円を描きたい。

だから私はそれを検索し、解決策を見つけました。

ggplot2で円を描く

ただし、プロットの x 軸は日付形式であるため、このソリューションは使用できません。

my_plot <- qplot(Day, value, data = target_data_melt, shape = variable, colour = variable, geom="line")
my_plot <- my_plot + scale_x_date(labels = date_format("%Y-%m"))

プロットに円を描くにはどうすればよいですか?

日付軸に円を描く方法はありますか?


target_data_melt はこんな感じ。

      Day  variable       value

1 2010-10-01 231 0.007009346

2 2010-10-03 231 0.005204835

3 2010-10-05 231 0.006214004

4

1 に答える 1

1

あなたが提供したリンクからのコードを適応させて、x座標を日付としてフォーマットすることができます:

require("date")

circle <- function(center_Date = as.Date("2012-11-24"), 
                   center_y = 0, 
                   r.x = 100,
                   r.y = 100,
                   npoints = 100) {
  cycle <- seq(0,2*pi,length.out = npoints)
  xx <- center_Date + r.x * cos(cycle)
  yy <- center_y + r.y * sin(cycle)
  return(data.frame(x = xx, y = yy))
}

そしてデモンストレーション:

df <- circle()
plot <- ggplot(df, aes(x, y)) + geom_path()
plot(plot)

サンプル画像 (調整された日付と y 中心)はこちら.

(楕円形ではなく) 完全な円を得るには、rx と ry を適切に設定する必要があります。これらがどうあるべきかは、プロットで使用するスケールによって異なります。

于 2012-11-24T15:19:29.783 に答える