问题标签 [geom-segment]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
8 浏览

geom-segment - 将点图中的线段变成箭头

我想将一条线段变成一个箭头,表示该线继续超出它的终点,但我收到错误消息:Don't know how to automatically pick scale for object of type arrow. Defaulting to continuous. Fejl: Elements must equal the number of rows or 1

我试过这个: p <-ggplot(spray, aes(x=Name, y=Dose, fill=System))+ geom_dotplot(binaxis='y', stackdir='center', stackratio=1, dotsize=1.2) + geom_segment(aes(x = 2,y = 0.009,xend = 2,yend = 0.1,箭头 = 箭头(长度 = 单位(4,“mm”))))+

p

0 投票
1 回答
104 浏览

r - 可以将 ggplot2 geom_segment 大小指定为轴大小的比例吗?

我在图中有一个 geom_segment 并且希望它的大小相对于 y 轴进行缩放。

例如:

在 y=10 的条形图上方生成一个水平线段,固定大小为 20(我认为是毫米)。但是,当您调整绘图大小时,无论绘图的大小或轴的尺寸如何,它都会保持 20。

我试过使用 scale_size_continuous() 但似乎无法得到我正在寻找的结果。

有没有办法设置大小,以便在情节大小改变时改变?

编辑:附上200x200和1000x1000的导出,可以看到段高比例没有保持,段的高度是绝对的。

200x200 1000x1000

0 投票
0 回答
112 浏览

r - geom_segment 覆盖多个方面

我试图用 R 的 ggplot 画一条线,从一个方面开始,在另一个方面结束。

我相信这个问题还没有被问到(至少我找不到),但我找到了一些可以实现这一点的示例代码:http ://rstudio-pubs-static.s3.amazonaws.com/410976_f8eb6b218bfa42038a8b7bc9a6f9a193.html

但是,文档很薄弱,我没有设法解开代码。有人可以提供一个易于理解的版本来说明这个技巧吗?

以下是一些代码作为示例:

显然,在 中gg_line,红色geom_segment到达了方面 A 中的相应坐标。但是,我希望端点引用方面 B 中的坐标。

非常感谢对工作解决方案的任何推动!

0 投票
1 回答
83 浏览

r - 在 ggplot2 中的 geom_segment 中添加一个间隙

我有一些带有id, time_to_event, event, 治疗start和治疗stop变量的数据。这是一个可重现的示例:

我计算了一个图,它显示了 as 的类型event和治疗geom_point的时间 asgeom_segment和。这是代码:startstop

情节如下所示:

示例图

我的问题是,是否可以geom_segment在某个点添加一个间隙,比如说在段长度的一半处。理想情况下,中断应该看起来像绘图轴中的“典型”间隙,如下所示https://rstudio-pubs-static.s3.amazonaws.com/235467_5abd31ab564a43c9ae0f18cdd07eebe7.html

例子

在这里,我们可以看到一种双斜线。我有使用双斜杠 unicode 字符(Link)的想法,但我认为这只会生成一个新层,并且会忽略geom_segment. 有没有一种聪明的方法来计算这样的差距,在geom_segment一个斜线处结束并在第二个斜线处重新开始?理想情况下,它适用于双斜线,但如果有另一种合适的形状或其他方式,我会很好。

如果有解决此问题的智能解决方案,我将不胜感激。非常感谢。

0 投票
1 回答
51 浏览

r - Geom_segment 没有读取缺失的美学:x、y、xend 和yend Piper Plot

我试图在这里重现 Piper 图:https ://github.com/markolipka/ggplot_Piper但是我不断收到错误消息: 错误:geom_segment 需要以下缺失的美学:x、y、xend 和yend,
尽管 x、y、xend并在代码中指定了yend: https ://pastebin.pl/view/3a5dfd01

有没有人使用过这个 Piperplot 代码?谁能指出我需要删除或添加的正确方向?

0 投票
2 回答
39 浏览

r - 如何使用另一个变量对在 geom_segment 中创建的箭头进行加权和标记

考虑这个数据框:

我们在多个位置( )ID的观察结果相同。Loc观测值按它们发生的顺序排列,因此第一个观测值位于Loc == A,第二个观测值位于Loc == B,依此类推。TimeDiff是每次连续观察之间的时间段。我制作了以下图表以显示Loc随着时间的推移 s 之间的“路径”:

在此处输入图像描述

我的主要问题:我们如何根据变量对每个箭头的大小进行加权TimeDiff,以及如何用相应的值标记每个箭头TimeDiff?表示连接前 2 个观测值的箭头在哪里Loc == ALoc == B将比后面的箭头更粗,因为TimeDiff两个观测值之间有一个更大的 (4.2)。

一个附带问题:请注意Locinclude AB和的 3 个级别D。假设C我想在B和之间的情节中包含另一个级别D。这怎么能扔进去?

0 投票
1 回答
34 浏览

r - geom_segment() 不存储在 for 循环中定义的对象值

我定义了一个非常简单的for循环,在其中我绘制了一个带有垂直红线和一个较小的垂直黑色线段的正态分布。正态分布不会改变,但垂直线和垂直线段的位置应该在每次迭代时发生变化。
如果在每次迭代后即时绘制ggplot()对象,则线条会正确显示,但如果我将每个绘图存储在列表中然后绘制列表,则垂直黑色段始终具有最后循环中定义的值。请检查下面的reprex:

如果您在启动plot_list对象后检查绘图,您会看到每个绘图的红线位置发生变化,而黑色线段则没有。关于如何解决这个问题的任何建议?谢谢!

0 投票
1 回答
107 浏览

r - 用 position_dodge 绘制 geom_segment

我有一个数据集,其中包含个人随着时间的推移在哪里工作的信息。更具体地说,我有关于个人在给定工作场所工作的时间间隔的信息。

我想要一个可以看到每个人在每个工作场所工作多长时间以及他们如何四处走动的模式。我尝试绘制一个geom_segment,因为我有每个地方的个人作品的开始和结束日期的信息。此外,由于同一个人可能在同一个月内在多个地方工作,所以我想position_dodge在同一工作时间的不同工作场所重叠时使其可见。这是在这篇文章中提出的:Ggplot (geom_line) with overlays

我遇到的问题是:(i)position_dodge似乎没有工作,(ii)我不知道为什么所有的段都被涂成黑色。我希望每个工作场所都会出现不同的颜色和传奇。

0 投票
1 回答
105 浏览

r - 带有aes填充的ggplot2 geom_point仅显示黑色

我无法用 显示不同的填充颜色geom_point,只显示黑色。我知道我可以使用颜色来显示不同的颜色,但它似乎不适用于geom_segment. 这是我得到的一个示例,其中点仅显示为黑色,而不是scale_fill_manual. 以其他方式显示相同的图并使用不同的两个图例,一种用于颜色,另一种用于具有不同颜色的形状。谢谢!

我得到的情节

0 投票
0 回答
30 浏览

r - ggplot2 我可以堆叠水平 goem_segments 吗?

下面的代码生成一个甘特图,按人对每个项目的时间。它分两层完成,黑条代表一个人的 100% 时间,彩色条代表项目的时间。

我想要的是像图像一样堆叠的项目栏,所以很明显 Jane 在 12 月是 100% 承诺的。我不在乎它们堆叠的顺序。

是否有可能或者我应该瞄准每人 1 个地块,然后是 multiplot()?

想要的情节