使用 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 轴标签加粗 的相关文章

  • 基于服务器中的条件逻辑呈现闪亮的用户输入

    我正在尝试设置一个闪亮的导航栏面板页面 其中用户控制我根据一组单选按钮中所做的初始选择来显示更改 我直接在 ui 中渲染单选按钮 然后在 Server r 中的 观察到的 逻辑控制结构内构建条件控件 弹出错误是因为我的初始 if 语句计算结
  • 将 Instagram/youtube 嵌入 Shiny R 应用程序

    我想通过点击图表来播放 Instagram 或 Youtube 视频 例如显示异常值等 到目前为止 明确告诉 Shiny 视频内容是有效的 require shiny require ggplot2 data df lt data fram
  • 如何对同一列上的数据帧列表中的所有数据帧进行排序?

    我有一个数据框列表dataframes list 举个例子 我把dput dataframes list 在底部 我想对列列表中的所有数据框进行排序enrichment 我可以对一个数据框进行排序 first dataframe lt da
  • 计算例如具有多列 data.frames 的列表中的平均值

    我有几个 data frames 的列表 每个 data frame 有几列 通过使用mean mylist first dataframe a我可以得到这个 data frame 中 a 的平均值 但是我不知道如何计算列表中存储的所有 d
  • LDA with topicmodels,如何查看不同文档属于哪些主题?

    我正在使用 topicmodels 包中的 LDA 我已经在大约 30 000 个文档上运行它 获取了 30 个主题 并获得了主题的前 10 个单词 它们看起来非常好 但我想看看哪些文档属于哪个主题的概率最高 我该怎么做 myCorpus
  • 我无法下载 R 中的 reshape2 包 [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我在尝试安装 R 包时收到此响应 gt installed packages reshape2 Package LibPath V
  • 如何计算R中移动窗口内的平均斜率

    我的数据集包含2个变量y 和 t 05s y 每 05 秒测量一次 我正在尝试计算移动中的平均坡度20秒窗口 即计算第一个 20 秒斜率值后 窗口向前移动一个时间单位 05 秒 并计算下一个 20 秒窗口 在以下位置生成连续 20 秒斜率值
  • 如何使用 R 计算成为列表中中位数的概率?

    假设我有以下数据集 其中显示了假设实验的每个状态的三个观察结果的列表 state lt c Iowa Minnesota Illinois outcome lt list c 5 11 11 c 3 12 8 c 9 14 2 dat lt
  • Dendextend:关于如何根据定义的组为树状图的标签着色

    我正在尝试使用一个名为 dendextend 的很棒的 R 包来绘制树状图并根据一组先前定义的组为其分支和标签着色 我已阅读您在 Stack Overflow 中的答案以及 dendextend vignette 的常见问题解答 但我仍然不
  • 尝试读取 CSV 文件时出现“无法识别的字符串转义”

    我正在尝试导入一个 csv文件 以便我可以观看此视频 R ggplot2 图形直方图 http www youtube com watch v 47kWynt3b6M 我安装了所有正确的软件包 包括ggplot以及相关的包 视频中的第一个说
  • 在 R 中绘制 Likert 变量的堆积条形图

    假设我有一个如下所示的数据框 P Q1 Q2 1 1 4 1 2 2 3 4 3 1 1 4 其中的列告诉我哪个人相应地回答了问题 q1 q2 中的哪一个 这些问题需要按照 4 分李克特量表进行回答 例如 批准 表示 1 稍微批准 表示 2
  • pyomo + 网状错误 6 句柄无效

    我正在尝试运行pyomo优化 我收到错误消息 Error 6 The handle is invalid 不知道如何解释它 环顾四周似乎与特权有关 但我不太明白 在下面找到完整的错误跟踪以及重现它的玩具示例 完整的错误跟踪 py run f
  • twitterR 和 ROAuth R 软件包安装

    我在安装 CRAN 上的 twitteR 和 RAOuth 软件包时遇到一些问题 我尝试了几种不同的方法 在 Windows 下使用源代码 在 Ubuntu 下使用 RStudio 我尝试了以下命令 sudo apt get install
  • 从命令行运行 R 代码 (Windows)

    我在名为 analysis r 的文件中有一些 R 代码 我希望能够从命令行 CMD 运行该文件中的代码 而无需通过 R 终端 并且我还希望能够传递参数并在我的代码中使用这些参数 例如就像下面的伪代码 C gt execute r scri
  • 在 R 格子包中微调点图

    我正在尝试为不同的数据集和不同的算法绘制一堆 ROC 区域 我有三个变量 方案 指定所使用的算法 数据集 是正在测试算法的数据集 以及 Area under ROC 我正在 R 中使用lattice库 命令如下 点图 方案 Area und
  • 使用 R 选择第一个非 NA 值

    df lt data frame ID c 1 1 1 2 3 3 3 test c NA 5 5 6 4 NA 7 3 NA 10 9 我想创建一个名为 value 的变量 它是每个单独 ID 测试的第一个非 NA 值 对于只有NA的个体
  • 将数据框中重叠的范围合并到唯一的组中

    我有一个 n 行 3 的数据框 df lt data frame start c 178 400 983 1932 33653 end c 5025 5025 5535 6918 38197 group c 1 1 2 2 3 df sta
  • ddply 和aggregate 之间的区别

    有人可以通过以下示例帮助我了解聚合和 ddply 之间的区别 数据框 mydat lt data frame first rpois 10 10 second rpois 10 10 third rpois 10 10 group c re
  • 在 r 中的 group_by 之后建模后取消列表列的嵌套

    我想对所有组进行线性回归group by 将模型系数保存在列表列中 然后使用 unnest 扩展列表列 这里我用的是mtcars以数据集为例 注 我想用do here becausebroom tidy 不适用于所有型号 mtcars gt
  • 旋转 Markdown 的表格 pdf 输出

    我想将 pdf 上的表格输出旋转 90 度 我正在使用 Markdown 生成报告并kable循环显示表格 如果可以的话我想继续使用kable因为还有很多其他依赖于它的东西我没有包含在这个 MWE 中 这是一个简单的例子 使用iris数据集

随机推荐

  • 分支之间的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 个刻度非常有用 我想保留每一天的刻度线 我无法找到有关此主题的任何内容 任何帮助将不胜感激