저는 Mathematica에서 R으로 전환하고 있지만 시각화로 인해 어려움을 겪고 있습니다.그래디언트 색상 및 고정 눈금 히트 맵 ggplot2
나는 다음과 같이 히트 맵을 할 노력하고있어 :
short
penetration scc pi0
1 0 0 0.002545268
2 5 0 -0.408621176
3 10 0 -0.929432006
4 15 0 -1.121309680
5 20 0 -1.587298317
6 25 0 -2.957853131
7 30 0 -5.123329738
8 0 50 1.199748327
9 5 50 0.788581883
10 10 50 0.267771053
11 15 50 0.075893379
12 20 50 -0.390095258
13 25 50 -1.760650073
14 30 50 -3.926126679
15 0 100 2.396951386
16 5 100 1.985784941
17 10 100 1.464974112
18 15 100 1.273096438
19 20 100 0.807107801
20 25 100 -0.563447014
21 30 100 -2.728923621
mycol <- c("navy", "blue", "cyan", "lightcyan", "yellow", "red", "red4")
ggplot(data = short, aes(x = penetration, y = scc)) +
geom_tile(aes(fill = pi0)) +
scale_fill_gradientn(colours = mycol)
을 그리고 난이 얻을 :
을하지만 이런 식으로 뭔가가 필요합니다
을 그 그렇습니다, 나는 색깔이 각각에 대해 불연속 대신에 음영의 표면을 통해 연속적으로 (저하 된) 것을 원합니다. 광장. 나는 다른 사람들의 질문에서 어떤 사람들이 데이터를 보간했다는 것을 알았지 만, ggplot 호출 내에서 더 쉬운 방법이 있어야한다고 생각한다. (Mathematica는 기본적으로 행해진 다.)
게다가 0은 항상 흰색 (양수 값은 따뜻한 색, 음수 값은 춥다)으로 색 눈금을 고정하고 범위와 관계없이 색 분포가 항상 동일한 것으로 나타냅니다. (나는 여러 데이터 세트에 대해 동일한 플롯 구조를 사용하기 때문에) 데이터의
는
, 정확한 기능은'scale_fill_gradient2 (중간 점 = 0 , 낮음 = "네거티브 색", 중간 = "흰색", 높음 = "긍정적 인 색")'. 이는 제로를 항상 흰색으로 제한합니다. – Brian