问题标签 [violin-plot]

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 投票
1 回答
1844 浏览

r - 用 geom_violin 填充透明度

如何增加小提琴图填充的阿尔法而不是边界线的阿尔法?

更改 alpha 作为参数会geom_violin()导致填充和线条都发生变化。

0 投票
0 回答
467 浏览

python - 绘制分割小提琴图

我在 Python 中使用 Seaborn 来制作小提琴图。我有两列,一列包含数据,另一列包含分类(a 或 b)。我想制作一个分割小提琴图 - 其中一半将显示整个数据集的密度,另一半将显示属于 a 类的样本的密度。这可能吗?

0 投票
2 回答
27561 浏览

r - 用ggplot2分割小提琴图

我想使用 ggplot 创建一个分割小提琴密度图,就像seaborn 文档的这个页面上的第四个示例一样。

在此处输入图像描述

这是一些数据:

我可以像这样绘制躲避的小提琴:

在此处输入图像描述

但是很难直观地比较并排分布中不同点的宽度。我无法在 ggplot 中找到任何分裂小提琴的例子 - 有可能吗?

我找到了一个基本的 R 图形解决方案,但该功能很长,我想突出显示分布模式,这些分布模式很容易在 ggplot 中添加为附加层,但如果我需要弄清楚如何编辑该函数,将很难做到。

0 投票
2 回答
1029 浏览

r - 如何在同一图表上为不同的水记录器值制作多个箱线图,例如 R 中的(所有列都有连续数据,没有因素)

假设我有以下数据集1

我想为同一图表上的每个水记录器值制作箱线图。在我检查的每个地方,人们都有一个要使用的因子变量。但是,我不想要因素,我将水记录器编号作为列名。我可以用通用的 boxplot 命令来做到这一点:boxplot(data$colname1, data$colname2, data$colname3, and so on)但是我怎样才能用更好的图形来做到这一点,比如在ggplot2.

0 投票
2 回答
2719 浏览

r - 不同的分位数:箱线图与小提琴图

箱线图与小提琴图

据我所知,以箱线图结尾的方框分别代表 25% 和 75% 的分位数,中位数 = 50%。所以它们应该等于参数中绘制的 0.25/0.5/0.75 分geom_violin位数draw_quantiles = c(0.25, 0.5, 0.75)

中位数和 50% 分位数拟合。但是,0.25 和 0.75 分位数都不适合箱线图的箱端(见图,尤其是 'virginica' 刻面)。

参考:

  1. http://docs.ggplot2.org/current/geom_violin.html

  2. http://docs.ggplot2.org/current/geom_boxplot.html

0 投票
1 回答
2826 浏览

r - 创建小提琴图,其中小提琴和箱线图在 ggplot2 中具有不同的颜色

我正在尝试创建一个分组小提琴图(见图),其中我为四个分类变量绘制了 3 个级别。考虑到数据,除了方框与后面较宽的小提琴图颜色相同使得它们难以查看之外,该图的结果很好。理想情况下,我希望所有盒子始终保持白色。我知道这些盒子改变颜色的原因是为了响应fill我选择的。我想知道是否有办法将填充geom_violingeom_boxplot.

这是我正在使用的精简代码

我正在创建的情节示例

0 投票
1 回答
192 浏览

r - 在ggplot2中生成水平缺口图

我有一个包含 3 种不同疾病状况和几种结果的数据。疾病在第一列,结果从第二列开始命名。请参阅附件中的数据。

然后,我在下面创建了一个图,如附件(1 )所示。

但是,我想生成一个数字作为这个(Figure2)。基本上,我想将图形翻转为水平并将所有数据放在一个面板中。

如果你能帮我解决这个问题,我会很高兴?非常感谢您提前。

0 投票
1 回答
1364 浏览

python - Python:加权小提琴图

我必须大量使用加权概率分布,并且想使用小提琴图进行一些可视化。但是,我找不到在任何常见的嫌疑人(matplotlib、seaborn、bokeh 等)中使用加权数据创建这些的方法。

有谁知道允许使用加权数据的实现或可能的解决方法?由于我的数据集很大,从加权数据重新创建人工未加权分布是不可行的。R 有一个 wvioplot 包,但我真的很想坚持使用 Python。

0 投票
2 回答
272 浏览

r - 线性密度图

我目前有数据可以按年龄告诉我 10-18 岁的人的血压。我想为每个年龄创建一个类似于小提琴图的密度图。

看起来像这样,但只有密度图。

关键是获取每个年龄的直方图,然后翻转它并绘制它,其中 x 轴是年龄,y 轴是血压。我觉得我以前看过这个,但我不记得在哪里。

谢谢你的帮助!

0 投票
0 回答
118 浏览

r - R - 根据列的级别数为 vioplot 生成多个数据集

当我对一个物种(Pan)使用小提琴图时,我的代码如下所示:

它生成单个图,女性为红色,男性为蓝色。但是,我想遍历我拥有的所有物种,这就是这个变量中的内容:

vioplot 接受任意数量的数据集,因此由于每个物种都需要雌性和雄性,因此我需要生成 2*(物种数)数据集以传递给 vioplot。因此,对于两个物种,它将类似于:

我试过用“by”和“apply”来做这件事,但到目前为止还没有成功。

编辑:

我的数据示例: