ggplot2 中的圆形直方图,条形间距均匀且没有多余的线条

2024-01-09

我正在努力在 ggplot2 中制作一个圆形直方图,以显示 24 小时内呼叫数量的变化情况。我的数据集从 0 开始到 23,每小时的调用次数:

df = data.frame(xvar = 0:23, 
                y = c(468,520,459,256,397,241,117,120,45,100,231,398,340,276,151,134,157,203,308,493,537,462,448,383))

我使用以下代码来创建圆形直方图:

ggplot(df, aes(xvar, y)) +
    coord_polar(theta = "x", start = -.13, direction = 1) +
    geom_bar(stat = "identity", fill = "maroon4", width = .9) +
    geom_hline(yintercept = seq(0, 500, by = 100), color = "grey80", size = 0.3) +
    scale_x_continuous(breaks = seq(0, 24), labels = seq(0, 24)) +
    xlab("Hour") +
    ylab("Number of Calls") +
    ggtitle("Number of Calls per Hour") +
    theme_bw()

我真的很喜欢最终的情节:

但我不知道如何在 23 和 0 条之间获得与其他条相同的间距。现在,这两个栏彼此齐平,到目前为止我所尝试的任何方法都无法将它们分开。我还对删除不同时间之间的线条(例如 21 和 22 之间的线条)感兴趣,因为它有点分散注意力并且不传达任何信息。如有任何建议,我们将不胜感激,特别是关于 23 和 0 条间距的建议!


您可以使用expand的参数scale_x_continuous调整。稍微简化一下,

ggplot(df, aes(x = xvar, y = y)) +
    coord_polar(theta = "x", start = -.13) +
    geom_bar(stat = "identity", fill = "maroon4", width = .9) +
    geom_hline(yintercept = seq(0, 500, by = 100), color = "grey80", size = 0.3) +
    scale_x_continuous(breaks = 0:24, expand = c(.002,0)) +
    labs(x = "Hour", y = "Number of Calls", title = "Number of Calls per Hour") +
    theme_bw()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ggplot2 中的圆形直方图,条形间距均匀且没有多余的线条 的相关文章

  • ggplot:如何检索轴标签的值?

    如何提取下面的 ggplot 中用于标记 y 轴和 x 轴的数字 分别为20 30 40 and 10 15 20 25 30 35 Plot From r 统计公司 http r statistics co Top50 Ggplot2 V
  • R: pi[[j]] 中的错误:下标越界——数据帧列表上的 rbind

    我正在尝试重新绑定一个大的数据帧列表 outputDfList 它是通过将一个复杂的函数应用于一个大表而生成的 您可以通过以下方式重新创建outputDfList df1 data frame randomseq chr15q22 1 tr
  • 如何与 R 包 sf 进行“完整”联合

    我尝试使用三个多边形之间的并集sf st union 下图中显示了 ArcGIS Overlay Union All 的结果 我希望通过使用 R 中的 sf 包获得与 OUTPUT 中五个不同多边形类似的结果 library sf a1 l
  • tm 包本身是否提供了组合文档术语矩阵的内置方法?

    tm 包本身是否提供了组合文档术语矩阵的内置方法 我在同一语料库上生成了 4 个文档术语矩阵 每个矩阵为 1 2 3 4 克 它们都非常大 200k 10k 因此将它们转换为数据帧然后绑定它们是毫无疑问的 我知道我可以编写一个程序来记录每个
  • 有条件地为 R 中置信带之外的数据点着色

    我需要对下图中置信带之外的数据点与带内的数据点进行不同的着色 我是否应该在数据集中添加一个单独的列来记录数据点是否在置信区间内 您能举个例子吗 示例数据集 Dataset from http www apsnet org education
  • 如何在 R 中关闭管道连接之前获取输出?

    在 R 中 我们可以使用以下命令打开管道连接pipe 并写信给它 我观察到以下情况 我不太明白 让我们使用一个python管道例如 z pipe python open w cat x 1 n file z cat print x n fi
  • 将嵌入其他文本的长州名称转换为两个字母的州缩写

    我的目标是识别以具有其他文本的字符向量写出的美国各州 并将各州转换为缩写形式 例如 北卡罗来纳州 到 北卡罗来纳州 如果向量只有长形式的状态名称 那就很简单 但是 我的向量在随机位置有其他文本 如示例 states 中所示 states l
  • 在 R 中将时间从数字转换为时间格式

    我从 xls 文件中读取数据 显然 时间格式不正确 如下 举例 0 3840277777777778 0 3847222222222222 0 3854166666666667 确实 他们应该是 09 12 09 13 09 13 我不知道
  • 如何向 ggplot 标题和标题添加图标?

    现在我正在尝试将图标放入 ggplot 可视化中 为此 我在网上检查了一些教程 当我运行 Claus Wilke 的以下代码示例时 library ggtext library ggplot2 ggplot mtcars aes mpg d
  • 使用 ``magrittr::`%>%` `` 时 magrittr 管道出错

    不管出于什么原因我在玩magrittr管道语法 并遇到一个奇怪的错误 当您 scope 显式限定调用时发生 gt 我知道使用下面的语法会破坏管道的用途 但我很好奇为什么会发生错误 第一次致电sum按预期工作并输出1 第二次调用会导致错误 E
  • 使用 google 查询邮政编码距离

    我有两个邮政编码列表 R 语言 其中一个是孩子的地址及其学业成绩 另一个是学校的地址 我希望能够为每个孩子找到最近的学校 所以大概需要通过转换为长和纬度值来计算邮政编码之间的距离 然后我希望能够在谷歌地图上绘制每所学校的所有孩子 并看看住在
  • 使用 data.table 而不是 data.frame 进行子集化

    我正在处理一个包含 300 万行和 10 列的数据框 并且正在对其进行一些子集化 我下面有一些玩具代码 当我子集化时 需要很长时间 如果我使用 data table 和 data table 上的子集会更快吗 这是一些玩具代码 s lt c
  • R:重新列出平面列表

    这个问题 https stackoverflow com questions 8139677有一个很好的解决方案 可以在保留列表数据类型的同时展平列表 其中unlist才不是 flatten function x unlist vector
  • 不同元素的ggplot字体大小

    我知道在创建 ggplot 图后我可以使用theme get 返回所有主题元素的详细信息 这对于弄清楚诸如此类的事情非常有帮助strip text x等等 但我有两件事无法弄清楚 1 在下面的ggplot图形中 代表短语 被土拨鼠卡住的木头
  • R Shinydashboard 根据选项卡选择显示/隐藏 UI 元素

    如果有人可以提供帮助 我正在努力满足要求 我必须根据用户的选项卡面板选择在仪表板侧栏上显示 隐藏一些元素 这是 UI 代码的一部分 可让您了解我的应用程序的结构 我需要仅在 tabpPanel 2 上显示 Fourthoutput Fift
  • R - Rstudio - 如果生成警告/错误,则使 R 播放声音

    我正在运行一个循环遍历股票对组合列表的脚本 偶尔 由于对组合之间的数据长度不同而产生错误 脚本会停止运行 我只是将不匹配的股票从考虑中删除 Error in model frame default formula stckY stckX 0
  • 匹配字符串在多列上循环

    我有来自一项开放式调查的数据 我有一个注释表和一个代码表 代码表是一组主题或字符串 我正在尝试做的事情 检查代码表中相关列中是否存在开放式注释中的单词 字符串 在评论表中为特定主题添加一个新列 并添加一个二进制 1 或 0 来表示已标记哪些
  • 通过另一个函数将数据和列名称传递给 ggplot

    我将直接跳到一个示例并在后进行评论 cont lt data frame value c 1 20 variable c 1 20 1 20 1 5 1 20 2 group rep c 1 2 3 each 20 value variab
  • 在 R 中绘制决策树(插入符)

    我已经训练了一个数据集rf方法 例如 ctrl lt trainControl method LGOCV repeats 3 savePred TRUE verboseIter TRUE preProcOptions list thresh
  • 如何在 R 中使用别名运行系统可执行文件?

    假设我正在 R 中运行系统命令来运行executable inputfile lt path myfile txt 我该如何更换 path myfile txt在下面的命令中inputfile如下面命令所示 system executabl

随机推荐

  • 在 R Shiny 中读取文件

    因此 我正在 R闪亮中构建一个应用程序 要求用户上传 csv 文件 一旦被 R闪亮读入 我不确定如何实际操作该对象来使用 一般代码语法如下 用户界面文件 ui R Define UI for random distribution appl
  • 如何在 64 位 Windows 7 计算机上安装 pycrypto?

    我尝试使用安装 PyCryptopip 但它抱怨需要 vcvarsall bat 我安装了 Visual Studio 2008 但现在我得到了ValueError u path 当我尝试从安装它时pip 我尝试从下载预构建的二进制文件虚空
  • 当我从应用程序中清除数据时,Sqlite 数据库被删除

    我创造了Sqlite应用程序中的数据库 当我清除数据时settings gt applications gt manage applications the Sqlite数据库已删除 任何要保留的建议sqlite数据库原样 当您按下Clea
  • 为什么 IE11 错误地处理 Node.normalize() 的减号?

    我遇到了一个问题 即当使用 Node normalize 函数连接相邻文本节点时 具有某些字符的 DOM 文本节点在 IE 中表现得很奇怪 我创建了一个 Codepen 示例 它允许您在 IE11 中重现该错误 http codepen i
  • 从谷歌应用程序脚本预填写谷歌表单

    我有一份学生登记表 其中有学生证 这是必填字段 我有一个谷歌应用程序脚本函数 可以告诉该学生是否注册了任何课程 有没有办法通过调用 Google Apps 脚本函数 是 或 否 来自动填写注册的现场课程 是的 您可以使用表单 ID 创建预填
  • 有没有办法有条件地应用注释?

    在我的 java play 应用程序中 我有注释 RequiresAuthentication clientName CasClient 在我的控制器内 我只想在生产环境中对用户进行身份验证 如何有条件地应用注释 如果我处理身份验证的方式是
  • 在 as3 中获取对象值的最快方法

    好吧 我发誓这个问题应该无处不在 但事实并非如此 我有一个值对象 里面有很多 getter setter 它不是一个动态类 我迫切需要搜索充满它们的 ArrayCollection 搜索涵盖所有领域 因此我将使用大约 13 种不同类型的 V
  • 测试带有浮点数的元组的断言

    我有一个函数返回一个元组 其中包含一个浮点值 通常我使用assertAlmostEquals比较它们 但这不适用于元组 此外 元组还包含其他数据类型 目前 我正在单独断言元组的每个元素 但这对于此类元组的列表来说太多了 对于这种情况 有什么
  • 如何让 JavaScript 随着时间的推移(而不是立即)写入结果?

    我有一个程序 它会写入很多 if 结果 例如 这个 const a prompt for let i 1 i lt a i console log i 不是实际的代码 因此 当您输入一个大数字时 会有大量答案等待输入控制台 因此 当达到某个
  • Pandas - 如何检查多索引列是否存在

    我的问题类似于如何检查 Pandas 中是否存在列 https stackoverflow com questions 24870306 how to check if a column exists in pandas但对于多索引列的情况
  • 当我尝试首先使用 EF5 代码对数据库进行逆向工程时出现异常

    该视频向我展示了如何从现有数据库使用 Code First http msdn microsoft com en us data jj572367 http msdn microsoft com en us data jj572367 所以
  • 如何从 scala play 访问发布数据?

    我有一条类型为 POST 的路线 我正在将发布数据发送到页面 我如何访问该帖子数据 例如 在 PHP 中您使用 POST 如何访问 scala 和 play 框架中的发布数据 从 Play 2 1 开始 有两种方法获取 POST 参数 1
  • Google 应用程序引擎示例应用程序抛出 503

    我已经设置了 Google 应用引擎的示例 android本教程 https developers google com cloud samples mbs getting started 当我在 EditText 中输入内容并按发送按钮时
  • 手工滚动 SOAP 请求

    我正在尝试构建一个手动 HTTP 请求 以便从我认为相当简单的 SOAP Web 服务调用返回响应 但是 我在正确构建请求时遇到了困难 并且没有得到我期望的响应 适用的wsdl声明 wsdl 目标命名空间 targetNamespace h
  • 如何更改 FullCalendar 中选定日期的背景颜色

    我正在尝试更改日历中所选日期的背景颜色 在我的下面的代码中 它突出显示所有点击的日期 我怎样才能只突出显示最后点击的日期 dayClick function day var mydate new Date this 0 getAttribu
  • 将时间序列中的分类列扩展到多个每秒计数列

    进行以下转变的最佳方式是什么 此转换分为两个部分 第一个是将速度转换为每秒平均值 第二种方法是获取分类列并将其转换为多列 每个分类值一列 其中该值是每秒发生的次数 例如 输入 xts A Time PosixCT Observed Lett
  • 使用 Javascript Regex 将字符换行到字符串中,不包括链接标签

    EDIT 这就是我必须做的 想象一下 如果我有一个文本 里面有一些 html 标签 它仍然是一个字符串 var string p Hello my name is Mauricio p p Hi my name is Patricia p
  • 在程序中替换 if..else if..else 树的最佳方法是什么?

    这个问题是由我最近开始经常看到的事情引起的 if else if else结构 虽然它很简单并且有它的用途 但它的一些东西一遍又一遍地告诉我 它可以被更细粒度 更优雅并且通常更容易保持最新的东西所取代 尽可能具体 这就是我的意思 if i
  • 下拉android时SwipeRefreshLayout加载程序不会上升

    我已经将 SwipeRefreshLayout 与 recyclerview 一起使用 它在所有 android 版本中工作正常 但在 Kitkat 中 当我下拉时 SwipeRefreshLayout 加载程序不会上升 也不会刷新 rec
  • ggplot2 中的圆形直方图,条形间距均匀且没有多余的线条

    我正在努力在 ggplot2 中制作一个圆形直方图 以显示 24 小时内呼叫数量的变化情况 我的数据集从 0 开始到 23 每小时的调用次数 df data frame xvar 0 23 y c 468 520 459 256 397 2