R语言绘图-5-条形图(修改坐标轴以及图例等)

这篇具有很好参考价值的文章主要介绍了R语言绘图-5-条形图(修改坐标轴以及图例等)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

0. 说明:

1. 绘制条形图;
2. 添加文本并调整位置;
3. 调整x轴刻度的字体、角度及颜色;
4. 在导出pdf时,如果没有字体,该怎么解决问题;

1. 结果:

R语言绘图-5-条形图(修改坐标轴以及图例等),R语言,r语言,ggplot2,字体调整文章来源地址https://www.toymoban.com/news/detail-715928.html

2. 代码:

library(ggplot2)
library(hrbrthemes)
library(sysfonts) ## 添加字体
library(showtext) ## 显示字体

#font_add("Times New Roman", "/Users/zzy/fonts_R/Times_new_roman_bold.ttf") ## 手动添加字体 (字体名称,字体包路径)
pdf("/Users/zzy/Desktop/linshi.pdf", width = 6, height = 5) # 打开图形设备
showtext_begin() 


dt = data.frame(category = c("A", "B", "C", "D", "E", "F", "G", "H",
                              "I","J","K",
                              "L","M","N","O","P","Q"),
                 value = c(10, -20, 15, 25, 30, 20, -10, 30,
                           20, 5, -50,
                           -10, 10, 3, 3, 2, -5),
                groups = c("pos","pos","pos","neg","neg","pos","neg","pos",
                        "pos","pos","pos",
                        "neg","pos","pos","neg","neg","pos"),
                text = c("*","","","","**","","","***",
                         "","","*",
                         "*","","*","*","",""))

## 指定特定的顺序
dt$category = factor(dt$category, levels = c("D", "E", "F", "G", "H", "A", "B", "C",
                                           "I","J","K",
                                           "N","O","P","Q","L","M"))
## 添加调整位置的列
pos_list = c()
for (v in dt$value){
  if (v>0){
    pos_list = c(pos_list, 0.5)
  }else{
    pos_list = c(pos_list, 1)
  }
}
dt$pos_list = pos_list

## 添加颜色列
dt$diycolor = c(rep("red",8), rep("blue", 3), rep("green", 6))

## 绘图
ggplot(data=dt, aes(x=category, y=value, fill=groups))+
  geom_bar(stat = "identity")+ ## 绘制条形图,stat使用identity,显示原始数据
  geom_text(aes(label=text), color="black", size=8, vjust=dt$pos_list) + ## 添加并调整星号的位置
  scale_fill_manual(values = c("red", "blue"))+
  ylab("Value")+
  theme_classic()+
  theme(axis.text.x = element_text(angle=45, hjust = 1, vjust=1, color=dt$diycolor), ## 调整 x 坐标轴刻度,旋转,并分组赋予颜色
        axis.text = element_text(size=15, face ="bold"),  ## x和y坐标轴刻度字体调整
        axis.title.x = element_blank(), ## 不显示x坐标轴标题
        axis.title.y = element_text(size=15, face="bold"),
        legend.position = "none") ## 不显示图例



showtext_end() 
dev.off()

到了这里,关于R语言绘图-5-条形图(修改坐标轴以及图例等)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Matlab绘图:绘制双坐标轴(双y轴)并设置两个y轴的颜色

    改变颜色有两种方法: 在开头就设置 在对应坐标轴启动的时候分别设置

    2024年02月11日
    浏览(43)
  • python绘制子图技巧——plt.subplot和plt.subplots、及坐标轴修改

    偶然发现 python(matplotlib) 中绘制子图有两种方法,一种是 plt.subplot ,另一种是 plt.subplots ,这篇博客说一下这两种方法的区别,用法,以及常用的一些函数。 plt.figure 的作用是定义一个大的图纸,可以设置图纸的大小、分辨率等,例如 plt.plot() 是直接在当前活跃的的axes上面

    2023年04月09日
    浏览(39)
  • Unity获取物体自身坐标轴的方向以及沿着该方向运动的方法

    有时候对于一个游戏对象,需要其沿着自身的坐标轴方向进行运动,那么首先如何获取自身的坐标轴方向? 获取自身的坐标轴方向可以通过transform组件进行获取(负方向加负号即可)  Vector3 moveDirection = transform.right;  获取自身的x轴的方向  Vector3 moveDirection = transform.forward;  获

    2024年02月12日
    浏览(54)
  • VTK OrientationMarker 方向 三维坐标系 相机坐标轴 自定义坐标轴

    本文 以 Python 语言开发 我们在做三维软件开发时,经常会用到相机坐标轴,来指示当前空间位置; 坐标轴效果: 相机方向坐标轴  Cube 正方体坐标轴  自定义坐标轴: Code: Axes CameraOrientationWidget OrientationMarkerWidget custom OrientationMarker

    2024年02月06日
    浏览(51)
  • Python Axes3D自制坐标轴(没办法俺不知道咋移动坐标轴,但是不移动坐标轴画图太难看了)

       因为很不巧用Axes3D自带的坐标轴画出来图有点丑,首先ticklabels离坐标轴有点远。其次想正负值都能显示。就在想能不能把轴往上移一下,同时拉近ticklabels和坐标轴的距离。    博主主要是发现了用ax.axis(‘off’)或者ax1.set_axis_off()可以达到把坐标轴全部关掉的效果,如下

    2024年02月15日
    浏览(40)
  • matlab设置坐标轴的坐标显示范围和刻度

    所用代码: 逐个演示代码结果:   参考资料: matlab设置x轴和y轴的坐标显示范围和刻度_matalb的极坐标图如何将坐标标出来_phymat.nico的博客-CSDN博客

    2024年02月09日
    浏览(71)
  • MATLAB: 调整坐标轴范围

    MATLAB: 调整坐标轴范围 在MATLAB中,可以使用一些方法来设置坐标轴的范围。通过调整坐标轴范围,可以改变绘图的可视化效果,并突出显示感兴趣的数据。本文将介绍一些常用的方法和示例代码。 使用axis函数设置坐标轴范围 axis函数是MATLAB中常用的设置坐标轴的函数之一。它

    2024年02月06日
    浏览(44)
  • 第六章、坐标轴的定制

    6.1、坐标轴概述 在绘制图表过程中,matplotlib会根据所绘图表的类型决定是否使用坐标系,或者显示哪种类型的坐标系。 坐标轴的结构相同,主要包括轴脊、刻度,其中刻度又可以细分为刻度线和刻度标签,刻度线又可以细分为主刻线和次刻线。坐标轴的各部分均是matplotli

    2024年02月06日
    浏览(38)
  • 采用VMD按照某一坐标轴旋转坐标结构

    关注 M r . m a t e r i a l   , color{Violet} rm Mr.material , Mr.material   , 更 color{red}{更} 更 多 color{blue}{多} 多 精 color{orange}{精} 精 彩 color{green}{彩} 彩 ! 主要专栏内容包括:   †《LAMMPS小技巧》: ‾ textbf{ underline{dag《LAMMPS小技巧》:}}   † 《 LAMMPS 小技巧》: ​ 主要介绍采

    2024年02月13日
    浏览(36)
  • 3Ds Max坐标轴切换,使用物体的世界坐标和本地坐标之间切换

    官方文档 官方文档 使用“参考坐标系”列表,可以指定变换(移动、旋转和缩放)所用的坐标系。选项包括“视图”、“屏幕”、“世界”、“父对象”、“局部”、“万向”,“栅格”、“工作”和“拾取”。 主工具栏 “参考坐标系”下拉菜单 在“屏幕”坐标系中,所

    2024年02月12日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包