使用 ggplot2 将每个第 N 轴标签加粗

2023-12-29

是否可以使用 ggplot2 将轴上的第 N 个刻度设为粗体?我只想将轴标记为粗体(小线),而不是文本。

在绘图中显示每日数据时,这对于突出显示每 7 个刻度非常有用。我想保留每一天的刻度线。

我无法找到有关此主题的任何内容,任何帮助将不胜感激!

EDIT:这是一个代码示例。我在最后一行扩展了它以增加所有刻度的大小。我想要的是让每个 N 个标签更大。例如每 7 日一次。手动定义每第七个是行不通的,因为我正在处理每天都在变化的数据。

library(ggplot2)
library(lubridate)
theme_set(theme_bw())

df <- economics_long[economics_long$variable %in% c("psavert", "uempmed"), ]
df <- df[lubridate::year(df$date) %in% c(1967:1981), ]

# labels and breaks for X axis text
brks <- df$date[seq(1, length(df$date), 12)]
lbls <- lubridate::year(brks)

# plot
ggplot(df, aes(x=date)) + 
  geom_line(aes(y=value, col=variable)) + 
  labs(title="Time Series of Returns Percentage", 
       subtitle="Drawn from Long Data format", 
       caption="Source: Economics", 
       y="Returns %", 
       color=NULL) +  # title and caption
  scale_x_date(labels = lbls, breaks = brks) +  # change to monthly ticks and labels
  scale_color_manual(labels = c("psavert", "uempmed"), 
                     values = c("psavert"="#00ba38", "uempmed"="#f8766d")) +  # line color
  theme(axis.text.x = element_text(angle = 90, vjust=0.5, size = 8),  # rotate x axis text
        panel.grid.minor = element_blank(),
        axis.ticks.x = element_line(colour = "black", size = 2))  

Solution: Thanks to @Jimbou! Using axis.ticks.x = element_line(colour = "black", size = c(2, rep(1,6))) leads to this. Perfect for daily Data! enter image description here


你可以试试:

ggplot(df, aes(x=date, y=value, color=variable)) + 
     geom_line() + 
     scale_color_manual(values = c("#00ba38", "#f8766d")) +
     scale_x_date(date_breaks = "1 year", date_labels ="%Y") +
     theme(axis.ticks.x = element_line(colour = "black", size = c(5, rep(1,5))),
       axis.text.x = element_text(angle = 90, vjust=0.5, size = c(15,rep(8,5))))

用过每个6th和用于说明目的的文本大小。 您还可以使用中断符和标签,但必须使用以下替代项,因为您复制了所有中断符和标签,并且必须事先将其删除。

scale_x_date(labels = lbls[!duplicated(lbls)], breaks = brks[!duplicated(lbls)]) 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 ggplot2 将每个第 N 轴标签加粗 的相关文章

  • 我可以调整scale_color_brewer的下限吗?

    我已经订购了我想使用 color Brewer 的分类数据 但我很难看到非常低的值 有没有办法去掉这些较低的值或设置范围的下限 ggplot data frame x 1 6 y 10 15 w letters 1 6 aes x y co
  • 如何在 Shiny 中动态渲染的 textInput 添加样式元素

    你好堆栈溢出 在我最近提出的问题中 我已经解决了一些与动态渲染 UI 元素相关的主要问题 并在一些了不起的人的帮助下动态创建了观察者 参见此处 动态渲染的 UI 如何在第二次运行时删除旧的反应变量 https stackoverflow c
  • 如何使用r中的dplyr在特定位置插入空白行

    我想在数据框中的特定位置插入空白行 我的数据框是这样的 dat lt data frame group c rep A 1 rep B 4 rep C 2 rep D 2 group 1 A 2 B 3 B 4 B 5 B 6 C 7 C
  • 如何根据查找表匹配多列

    我有以下两个数据框 lookup lt data frame id c A B C price c 1 2 3 results lt data frame price 1 c 2 2 1 price 2 c 3 1 1 我现在想要浏览所有列
  • 求解非线性方程组

    我正在尝试求解以下四个方程组 我尝试过使用 rootSolve 包 但似乎我无法通过这种方式找到解决方案 我正在使用的代码如下 model lt function x F1 lt sqrt x 1 2 x 3 2 1 F2 lt sqrt
  • 替换rmarkdown/knitr/pdf中字幕的自动编号

    我正在使用 Rmarkdown 生成 PDF 文档 我想在其中手动定义图号 下面是一个块的示例 r chunk26 fig cap Fig 5 3 My figure caption plot 1 1 我使用特殊的编号来遵循文档的章节 问题
  • 一次评论多个对象

    假设您有一个变量 a 到 j 的列表 for x in 1 10 assign letters x x 您将如何评论那些最近创建的对象 我尝试过类似的事情 for x in 1 10 comment get letters x lt pas
  • 单击 R Shiny 中的按钮后将输入字段重置为 null

    我正在构建一个应用程序 用户可以在其中按列输入表的数据值 单击 添加 按钮后 输入的值将按列附加到现有值 例如 如果输入 col1 2 3 并单击 ADD 我们将在显示屏中看到 col1 2 3 如果输入 col2 4 7 并单击 ADD
  • dplyr:同一公式中全年每日值的总和以及特定每日值的总和

    Using df数据框 date lt rep as Date seq as Date 2003 01 01 as Date 2005 12 31 by 1 format Y m d 9 site lt c rep Site 1 3 109
  • R markdown PDF:为测验者暂时隐藏剧透代码

    我正在使用 R markdown 创建 PDF R 课程 我想插入一个如下所示的测验 output pdf document What is the class of the following R object 1 pi r class
  • 用plotly创建丝带

    我需要在散点图上绘制加速度与英里 加仑的两个斜率 轻型汽车一处斜坡 重型汽车一处斜坡 我创建了这个 cars light lt cars log cars log log weight lt log mean cars weight car
  • 为什么“str_extract”只捕获其中一些值?

    我有一个表 其中有一个 会员类型 列 其中包括我们多年来使用的无数不同的会员级别 example lt data frame membership c Legacy Payment ID 3564 Payment Record 0 Peri
  • 将 R 中的时间数据绘制为各种分辨率(分钟、小时、秒等)

    我有一些 CSV 数据 例如 Timestamp Count 2009 07 20 16 30 45 10 2009 07 20 16 30 45 15 2009 07 20 16 30 46 8 2009 07 20 16 30 46 6
  • rollapply用于累积窗口[关闭]

    Closed 这个问题需要调试细节 help minimal reproducible example 目前不接受答案 我试图弄清楚如何在数据窗口上使用 R rollapply 该窗口从数据的开头累积扩展 在时间 t 滚动应用应使用 1 t
  • 如何更新 R 中的包?

    我想将一个 R 包升级到已经可用的新版本 我试过 update packages c R2jags 但它什么也没做 控制台上没有输出 没有错误 什么也没有 我使用了相同的语法install packages但也许我做错了什么 我一直在看 u
  • 在闪亮应用程序的 DT::datatable 中添加、删除和编辑行

    我有下面闪亮的应用程序 我可以通过按添加新行Add基于闪亮的小部件选择 我可以通过按选择并删除一行Delete我想将它们与单击一行的功能结合起来 然后在按Edit 例如 如果我单击第二行 然后更改Security Type小部件来自Stoc
  • 在 Travis 上使用 devtools 安装 R 包时遇到问题

    Travis CI 构建于drakeR包手册 https github com ropenscilabs drake manual 最近开始失败 https travis ci org ropenscilabs drake manual b
  • 在r中拆分数据并将所有拆分文件保存在csv中

    我有一个名为 data 的数据集 Model Garage City Honda C Chicago Maruti B Boston Porsche A New York Honda B Chicago Honda C New York 它
  • geom_polygon 的渐变填充

    此代码生成一个包含 3 个多边形的图表 我正在创建一个显示 3 个多边形的图表 如果有更好的方法来绘制多边形 我不太感兴趣 实际上这些多边形代表事件 并且这些事件有一个持续时间 首先 我感兴趣的是使用渐变填充每个多边形的可能性 librar
  • 如何在 R 中“推断”面板数据的值?

    我有一个带有 NA 值的面板数据 如下所示 uid year month day value 1 1 2016 8 1 NA 2 1 2016 8 2 NA 3 1 2016 8 3 30 4 1 2016 8 4 NA 5 1 2016

随机推荐

  • 分支之间的Git引用冲突(无法更新本地分支)

    我在尝试时遇到以下错误git 获取远程分支 错误 Ref refs origin remotes my branch 位于一些哈希值但预计另一个哈希值来自 github com 我的存储库 一些哈希值my branch gt origin
  • 是否有实用的方法来确定正在使用哪些 JCE 加密提供商?

    我们已将 Java 产品配置为仅使用经过 FIPS 验证的 RSA JCE 加密提供程序 但是 该产品将无法工作 当onlyRSA 库列在 java security 中 因此 某些内容正在向其他提供商请求非 FIPS 算法 通过排除过程
  • ClickOnce 发布后 WPF 应用程序崩溃

    我在 ClickOnce 发布 WPF 应用程序时遇到问题 如果应用程序已构建 调试或发布 则它运行正确 ClickOnce 发布的应用程序崩溃 我尝试更改目标平台 有时这种改变有助于解决问题 但并非每次都会 20 例中有 1 例 我有 V
  • 查找特定的 CSS @keyframes 规则

    我想调整一个具体的 keyframes 用 JavaScript 在我的 CSS 中规则 这一切都与以下代码配合得很好 CSS webkit keyframes changecolor 0 color red 100 color green
  • 节点:在 Debian 上找不到命令

    所以 我在 Mac 上工作 作为网络服务器 我安装了 Debian 8 但是 我目前正在开发一个节点应用程序 该应用程序大部分时间都是在本地主机上开发的 一切正常 我可以使用node index js没有问题 然而 我通过node js网站
  • 测试两条线是否相交 - JavaScript 函数

    我尝试寻找一个 javascript 函数来检测两条线是否相交 该函数将获取每条线 我们将其称为线 A 和线 B 的两个起点的 x y 值 就是如果相交则返回 true 否则返回 false 函数示例 如果答案使用矢量对象 我很高兴 Fun
  • jQuery 下拉列表更改事件不触发

    我编写 Asp Net MVC 应用程序 想要实现级联下拉列表功能 但我对 jQuery 更改事件有问题 我哪里错了 JavaScript Content jquery 1 4 1 js gt gt
  • Fabric.js 画布上的多个剪切区域

    制作照片拼贴制作器 https editphotosforfree com 我使用 Fabric js 它具有基于对象的裁剪功能 这个功能很棒 但剪切区域内的图像无法缩放 移动或旋转 我想要一个固定位置的剪切区域 并且图像可以根据用户的需要
  • Monitor.Pulse 和 Monitor.PulseAll 之间的区别

    Monitor PulseAll通知所有等待线程在队列中 Monitor Pulse通知a thread在等待队列中 下一个等待线程 只有下一个线程 一个线程 才能获取锁 那么区别是什么呢 我应该什么时候使用Pulse vs PulseAl
  • 如何登录 Google Cloud 上的 phpmyadmin

    我设置了 WordPress 1 Click Google Cloud 自动为我创建了一个用户 我没有找到 phpmyadmin 密码所在的任何地方 我怎样才能抓住它 首先 当您部署一键安装时 您需要确保选中 安装 phpMyAdmin 我
  • 使用 Android USB Host API 读取我的 USB 游戏控制器/或其他 USB 设备数据

    我正在尝试使用 Android USB Host API 读取我的 USB 游戏控制器数据 一旦我让它工作 我将连接其他设备进行测试 我的游戏控制器使用 OTG 线连接到我的 Android 手机 我现在能够获取设备 端点信息 但我不知道如
  • 配置中的属性占位符

    在 xml 上下文中使用 Spring 我们可以像这样简单地加载属性
  • r 中带有 Plot_ly 的 3D 表面,带有 x、y、z 坐标

    I am trying to use 3D surface plots to analyze the stability of outcomes as a function of inputs z is my outcome and x a
  • 如何从“带有时区的时间戳”列读取时区?

    我无法找到读取 PostgreSQL 类型列中时区值的方法带时区的时间戳 JDBC提供方法java sql ResultSet getTimestamp int java util Calendar 但我必须提供我自己的日历 我看不出有什么
  • 已弃用的 AudioManager.isWiredHeadsetOn 的替代方案?

    方法AudioManager isWiredHeadsetOn http developer android com reference android media AudioManager html isWiredHeadsetOn 28
  • 我已经成功安装了magento2但是有很多js错误

    我已经成功安装了magento2 但是有很多js错误 当通过 firebug 查看控制台日志时 它显示了很多错误 并且还有其他内容需要为 magento css 和 js 配置吗 尝试以下 使 bin magento 可执行 chmod x
  • sqlite3 - 如何使用 .databases 命令列出数据库名称?

    我是 Rails 和 SQLite 的新手 这是我的场景 我有sqlite3安装在我的 Windows Vista 计算机上 博客应用程序代码也已在以下位置实现 c rails blog 我调出命令提示符并直接进入c rails blog
  • ScrollView 内的 ForEach 不占用整个宽度

    我正在尝试使用 SwiftUI 重新创建当前应用程序的 UI 但这比我最初要困难得多 我想要实现类似卡片的单元格 背后有一些背景 我找到List至少目前还不支持这一点 List是如此有限 它不允许您移除电池分隔符 所以我搬到了ForEach
  • 检查 Jenkins 管道中是否存在插件 (Groovy)

    我想在我的管道中使用 Slack 通知插件 这非常简单 slackSend color danger message Everything broke 但是 如果 slackSend 不存在 我不希望构建中断 有没有办法先检查一下 你也许可
  • 使用 ggplot2 将每个第 N 轴标签加粗

    是否可以使用 ggplot2 将轴上的第 N 个刻度设为粗体 我只想将轴标记为粗体 小线 而不是文本 在绘图中显示每日数据时 这对于突出显示每 7 个刻度非常有用 我想保留每一天的刻度线 我无法找到有关此主题的任何内容 任何帮助将不胜感激