2016-10-05 18 views
0

私はggplot(geom_point)にプロットを描画しようとしていますが、描画することができますが、いくつかの変数に基づいて特定のシンボルの外観を操作したいと思います。シンボルを回転してサイズを変更するggplot

シンボル(pch = 22)をdata.frameで定義された角度だけ回転させたいとします。 Pch = 22は長方形のように見えます。また、データフレームで定義されている値に従って、rectagleの幅を変更したいと考えています。ここで

は、いくつかのサンプルデータです:

plotdata <- data.frame(x=c(4,6,7,10), 
      y=c(5,6,8,9), angle=c(pi/3, 2*pi/3, pi, pi/6), 
      widthparameter = c(2, 3, 5, 7)) 

基本的に、私は幅がwidthパラメータに比例しているように変更したいです。この例のデータでは、幅は2-7の範囲に比例して変化します。 例えば、幅が "幅パラメータ" 2の値で1mm、幅が "幅パラメータ"の値で3mmになる場合7。したがって、3と5の「幅パラメータ」は2mmと3の間の比例的になりますmm。

私はRに新しいので、ggplotでこのようなシンボルを操作することは、私にとっては不可能な難しい作業のようです。

助けてください、

+0

を学びながら、多分それはあなたの最善の策は、新しいGEOMを作成するために、おそらく使用されるであろうで、あります+スケール。私はかつて小規模の正多角形を描くためのものを持っていましたが、それは数年前のことでしたが、内部はあまり使われなくなってしまいました – baptiste

答えて

0

は、幅パラメータごとに異なるサイズのプロットを生成します。この

library(tidyverse) 
ggplot(plotdata, aes(x, y, size=widthparameter))+geom_point() 

にコンポーネントの数があります。さらに、あなたは地域によって拡張可能性 - 回転面ではもっとたくさんここに情報http://docs.ggplot2.org/current/scale_size.html

ggplot(plotdata, aes(x, y, size=widthparameter))+geom_point()+scale_size_area() 

を、あなたは困難な時期を持ってしようとしている - プラス広場(pch = 22)を使用して、それは時に四半期ごとにターンをあまり意味がありません回転します同じように見える...角度を因子に変えて、因子レベルごとに異なる形をプロットする方が良いかもしれません - あるいは、連続的な大きさで角度を塗るにはscale_colour_gradientn(...)のようなものを使用してください。

ggplot2を使って数字を作るための情報の負荷がそれの小さな部分を説明する時、私の刺し傷がhttp://ben-williams.github.io/updated_ggplot_figures.htmlあなたはR.

+0

回転の面に関しては、正方形を回転させると四分の一回転が同じように見えます。それはまさに私が必要とするものです。 –

関連する問題