2016-11-06 45 views
0

私はRのDTパッケージの大ファンです。私はExcelの条件付き書式設定されたテーブルを複製したいが、スタイリング機能にアクセスするのは難しいと思っています。条件付き書式のデータテーブルDT R

具体的には、ユーザーがデータテーブルの行/列を呼び出して、条件付き書式設定を適用できるようにすることができればと思っています。これは、自分自身のような初心者のRユーザーには非常に多くの機能を追加するだけでなく、他の人のためにプロセスをスピードアップすることもできます。ヒートマップとは異なり、行/列がすべて同じタイプでない場合は条件付き書式設定が重要なので、それぞれを個別に実行する必要があります。また、高値と低値のオプションマーカーが何であるかを明確にすることができてうれしいです。

私は

# create 19 breaks and 20 rgb color values ranging from white to red 
brks <- quantile(df, probs = seq(.05, .95, .05), na.rm = TRUE) 
clrs <- round(seq(255, 40, length.out = length(brks) + 1), 0) %>% 
    {paste0("rgb(255,", ., ",", ., ")")} 
datatable(df) %>% formatStyle(names(df), backgroundColor = styleInterval(brks, clrs)) 

thisページ次の例のように、あなたが休憩を作成することができます参照してくださいしかし、あなたのように、名前でそれらを呼び出すことができますようにそれはそうけれども、私は、個々の行に適用するかどうかはわからない

hereをformatStyle()と背景色で表示していますが、影付きのグラデーションが表示されず、行/列名を知る必要があります。 R datatableコミュニティIMOに協力してください。

答えて

-1

だから、誰かが私を助けることができれば値が今

"value <= -1.5504 ? 'rgb(255,255,255)' : value <= -0.9689 ? 'rgb(255,244,244)' : value <= -0.7885 ? 'rgb(255,232,232)' : value <= -0.6168 ? 'rgb(255,221,221)' : value <= -0.28425 ? 'rgb(255,210,210)' : value <= -0.1183 ? 'rgb(255,198,198)' : value <= 0 ? 'rgb(255,187,187)' : value <= 0.0754000000000001 ? 'rgb(255,176,176)' : value <= 0.2935 ? 'rgb(255,164,164)' : value <= 0.443 ? 'rgb(255,153,153)' : value <= 0.46745 ? 'rgb(255,142,142)' : value <= 0.5344 ? 'rgb(255,131,131)' : value <= 0.5647 ? 'rgb(255,119,119)' : value <= 0.979 ? 'rgb(255,108,108)' : value <= 1 ? 'rgb(255,97,97)' : value <= 1 ? 'rgb(255,85,85)' : value <= 1.1765 ? 'rgb(255,74,74)' : value <= 1.3743 ? 'rgb(255,63,63)' : value <= 1.65975 ? 'rgb(255,51,51)' : 'rgb(255,40,40)'" 

の下に表示されます(例では、設定したブレークポイントを使用して)だけではJavaScriptですJS_EVALクラス、中、および上記のコードのために取るbackgroundColor引数カラーパレットをどのように変えることができるか理解しています(RedからGreenへの移行と言います)。使いやすい機能を実装するのは難しくないと思いますが、その行/列を参照する方法はまだわかりません。 (あなたが呼び出すことができる引数valueColumnsがあるようですが、

1

次のように試してみてください:

# create 19 breaks and 20 hex color values ranging from red to green using white around the median 
brks <- quantile(df, probs = seq(.05, .95, .05), na.rm = TRUE) 
colfunc <- colorRampPalette(c("red","white","green")) 
clrs <- colfunc(length(brks) + 1) 
datatable(df) %>% formatStyle(names(df), backgroundColor = styleInterval(brks, clrs))