我的資料由三個數字變陣列成。像這樣的東西:
set.seed(1)
df <- data.frame(x= rnorm(10000), y= rnorm(10000))
df$col= df$x df$y df$x*df$y
將此繪制為熱圖看起來不錯:
ggplot(df, aes(x, y, col= col)) geom_point(size= 2) scale_color_distiller(palette = "Spectral")

但實際變數可能有一些偏度或例外值,這完全改變了情節。在df$col[nrow(df)] <- 100與ggplot上述相同的代碼后回傳此圖:

顯然,問題在于這一點改變了比例,我們得到了一個資訊很少的圖。我的解決方案是對資料進行排名,rank()從而為我迄今為止嘗試過的任何變數提供合理的顏色漸變。看這里:
ggplot(df, aes(x, y, col= rank(col))) geom_point(size= 2) scale_color_distiller(palette = "Spectral")

此解決方案的問題是新比例(2,500 到 10,000)顯示為顏色標簽。我希望原始比例顯示為顏色標簽(o 到 10)。因此,我希望顏色級數對應于排名資料;即我需要以某種方式將原始值映射到排名顏色值。那可能嗎?我試圖將引數
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/358859.html
上一篇:通過Microsoft365SMTP發送電子郵件時如何使用自定義顯示名稱?(以PHPSwiftMailer為例)
