0
エンドポイントをcolorRamp
に指定して、他のデータの範囲に関係なく、値が一貫して単一の色にマッピングされるようにすることはできますか?colorRampエンドポイントを指定する
plotly
に対話型相関プロットを作成しようとしています。ここにいくつかのサンプルデータがあります。
set.seed(1)
m <- 4
cm <- matrix(runif(m**2,-1,1),
nrow=m, ncol=m,
dimnames=list(letters[1:m],letters[1:m]))
diag(cm) <- 1
cm
# a b c d
# a 1.0000000 -0.5966361 0.2582281 0.3740457
# b -0.2557522 1.0000000 -0.8764275 -0.2317926
# c 0.1457067 0.8893505 1.0000000 0.5396828
# d 0.8164156 0.3215956 -0.6468865 1.0000000
は、私は基本的にこれのインタラクティブバージョンを作成しようとしています:
library(corrplot)
corrplot(cm,method='shade')
は、ここで私が作成したインタラクティブな相関プロット(ハックのようなもの)です。
div_colors <- c('dark red','white','navy blue')
grid_labels <- matrix(paste0('Cor(',
do.call(paste,c(expand.grid(rownames(cm),colnames(cm)), sep=', ')),
'): ',
t(round(cm,2))
),
ncol=m,byrow=TRUE)
library(plotly)
plot_ly(x = colnames(cm),
y = rownames(cm),
z = cm,
colors = colorRamp(div_colors),
type='heatmap',
hoverinfo='text',
text = grid_labels
) %>% layout(yaxis=list(autorange='reversed'))
私の問題はc(-1,1)
にcolorRamp
エンドポイントを強制せず、白色が観察最小限に0の相関、及び暗赤色マップと一致しないことがあるのではなく、-1。 @rawrコメントで述べたよう
[zminとzmax](https://plot.ly/r/reference/#heatmap- zmin)? @rawrが動作します。 – rawr
もしあなたがそれを書きたいなら、私はそれを答えとして受け入れます。種類はほとんどありませんが、例のいずれにも該当しませんでした(例:[here](https://plot.ly/r/heatmaps/#custom-colorscales))。 – C8H10N4O2