ggplot2 scale相關設置-坐標轉換


ggplot2 scale相關設置-坐標轉換

 

在R中坐標軸轉換有多種形式,包括對數轉換,平方根轉換以及坐標刻度前后進行調換

用到的函數分別有:

scale_x_log10(...)
scale_y_log10(...)
scale_x_sqrt(...)
scale_y_sqrt(...)
scale_x_reverse(...)
scale_y_reverse(...)
 
以上幾個函數其實基於
scale_x_continuous(name = waiver(), breaks = waiver(), minor_breaks = waiver(), labels = waiver(), limits = NULL, expand = waiver(), oob = censor, na.value = NA_real_, trans = "identity") 
中的 參數trans 可以實現相同的效果
 
以iris數據集為例
p<-ggplot(iris,aes(Petal.Length,Petal.Width))+geom_point()
p

標准情況下的效果

  

 
p+scale_x_log10()
p+scale_x_continuous(trans="log10")

以上兩行代碼實現的效果是相同的,即對函數x軸做對數轉換,效果如下

 另外,配合scales包,可以進行更豐富的scale設置

library(scales)
p+scale_x_continuous(trans=log2_trans(),labels=percent)

 

另外,借助coord_trans()函數,可以直接對x和y軸進行不同設置
p+scale_x_continuous(trans=log2_trans(),labels=percent)+
  scale_y_continuous(labels=dollar)
p+coord_trans(x="log2",y="sqrt")

  

 
 
以上是最后兩個函數的畫圖效果。
 
總體而言,scale轉換設置過程相對比較簡單,而且頻率可能也相對較少,稍作了解即可。 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM