-3

RI では、以下のようなヒートマップを作成しようとしています。サイズは放出されるエネルギーを表し、色は深さを表します。

私のデータセット (CSV) は次のようになります。

X,       Y,      Z,     E
19305,  -11211,  -599,  3000
22159,  -13553,  -600,  300
22155,  -13519,  -823,  2000
...     ...      ...    ...

X、Y、Z は軸で、E はエネルギーです。

過去数時間を R で遊んで過ごしましたが、目的を達成することができませんでした。可能であればサンプルコードを提供してください。

関連している

ありがとう!

ヒートマップ

4

2 に答える 2

2

編集:より意味のあるデータを使用するように更新されました。元の応答は下部にあります。

この地図...

... 次のコードで生成できます。

library(ggplot2)
library(maptools)

# grab earthquake data [source: USGS Earthquake Hazards Program]
url <- "http://comcat.cr.usgs.gov/fdsnws/event/1/query"
querystring <- "starttime=2012-01-01T00:00:00Z"
querystring <- paste(querystring,"minmagnitude=6", sep="&")   # magnitude >= 6
querystring <- paste(querystring,"mindepth=0",     sep="&")
querystring <- paste(querystring,"maxdepth=1000",  sep="&")   # depth <= 1000 km
querystring <- paste(querystring,"format=csv",     sep="&")   # return CSV file
uri <- paste(url,querystring,sep="?")
ggQuakes <- read.table(header=T,sep=",", file=uri)
# grab world map [built into maptools package]
ggMap  <- fortify(wrld_simpl)
# create map payers
ggp <- ggplot(ggQuakes)
ggp <- ggp + geom_point(aes(x=longitude ,y=latitude ,color=depth ,size=mag), alpha=0.8)
ggp <- ggp + scale_size(range=c(4,8))
ggp <- ggp + scale_color_gradient(low="#aaaaaa", high="#cc0000")
ggp <- ggp + geom_path(data=ggMap, aes(x=long, y=lat, group=group))
ggp <- ggp + coord_equal()
ggp <- ggp + theme(legend.position="bottom")
# render map
print(ggp)

元の応答:

より代表的なサンプルデータを提供した方が良いでしょうが、データセットを呼び出してgg

library(ggplot)
ggplot(gg) + 
  geom_point(aes(x=X,y=Y,color=Z,size=log(E)), alpha=0.5) +
  scale_size(range=c(4,8)) +        # sets minimum and maximum size
  scale_color_gradient(low="#aaaaaa", high="#cc0000")

レベルが非常に異なるため、対数 (エネルギー) スケールを使用しました。

于 2013-12-09T23:40:51.253 に答える