2017-04-24 10 views
4

これは、Rにライブラリsfとggplot2が必要です。私は4つの線ストリングを持つsfオブジェクトを持っています。これらの3は同一であり、一方が拡張である:私はアルファ= 0.1とggplot2でこれをプロットした場合、私はそれがより頻繁に起こるように対角線が垂直線よりも暗いことを期待sf linestringオブジェクトのggplot2 :: geom_sfでアルファを使うことができません

a <- st_linestring(rbind(c(2,2), c(3,3), c(3,2))) 
b <- st_linestring(rbind(c(2,2), c(3,3))) 
c <- st_linestring(rbind(c(2,2), c(3,3))) 
d <- st_linestring(rbind(c(2,2), c(3,3))) 

testsf <- st_sf(object = c(1, 2, 3, 4), geometry = st_sfc(a, b, c, d), crs = 4326)` 

。これはggplot2の通常の(非sf)動作です。

ggplot(data = testsf) + geom_sf(data = testsf, alpha = 0.1, lwd = 2, color = "black") 

ただし、すべての行が等しいアルファに見えます。これはなぜ起こるのですか?

更新:私は

testsf %<>% dplyr::mutate(geochar = as.character(geometry)) %>% dplyr::group_by(geochar) %>% dplyr::tally() %>% sf::st_cast() 

ggplot(data = testsf) + geom_sf(data = testsf, aes(alpha = n), lwd = 2, color = "black") 

をしようと伝説が、それはおそらくgeom_sfが正常に上記のコード行のアルファ(注を、処理していない...ポリゴンであるかのように変化するアルファを示してはdplyrとmagrittrが必要ですパッケージ)

+0

'aes()'の中に 'alpha = 0.1'を入れてみましたか? –

+1

'geom_sf'は実際に' sf'パッケージの一部ですか? 'sf'をインストールして読み込んだとき、私はまだ関数' geom_sf "を見つけることができませんでした。 – eipi10

+0

geom_sfはggplot2パッケージの一部です。 'devtools :: install_github(" tidyverse/ggplot2 ")' – sebdalgarno

答えて

関連する問題