zoukankan      html  css  js  c++  java
  • 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转换设置过程相对比较简单,而且频率可能也相对较少,稍作了解即可。 
     
  • 相关阅读:
    [悟]你为什么想创业
    [悟] 因上努力,果上随缘
    自己写个多任务多线程断点下载框架
    大道甚夷,而人好径
    [经验帖]外包如何定价
    python 基础语法
    python 中文编码问题
    python的运行机制和版本区别
    [转]linux 调用动态库so文件
    shell join详解
  • 原文地址:https://www.cnblogs.com/wkslearner/p/5648521.html
Copyright © 2011-2022 走看看