我正在尝试将一个普通的matplotlib.pyplot plt.plot(x,y)与变量结合起来作为变量y的函数和xboxplot.但是,我只想在某些(可变)位置上使用boxplot,x但这似乎在matplotlib中不起作用?
在具有默认设置的python-pandas 箱图中,红色条是平均值 ,而框表示第25和第75个四分位数,但在这种情况下,胡须究竟是什么意思呢?文档在哪里找出确切的定义(找不到它)?
示例代码:
df.boxplot()
Run Code Online (Sandbox Code Playgroud)
示例结果:

我需要做一个boxplot(在Python和matplotlib中),但我没有原始的"原始"数据.我所拥有的是最大值,最小值,平均值,中位数和IQR(正态分布)的预先计算值,但我仍然想做一个箱线图.当然,绘制异常值是不可能的,但除此之外,我猜所有信息都在那里.
我一直在寻找答案而没有成功.我最接近的是同样的问题,但对于R(我不熟悉).请参阅是否可以轻松地从先前计算的统计数据中绘制箱线图(在R?中)
有谁能告诉我如何做箱形图?
非常感谢!
我想在我的boxplot中的"mean"之间添加一行.
我的代码:
library(ggplot2)
library(ggthemes)
Gp=factor(c(rep("G1",80),rep("G2",80)))
Fc=factor(c(rep(c(rep("FC1",40),rep("FC2",40)),2)))
Z <-factor(c(rep(c(rep("50",20),rep("100",20)),4)))
Y <- c(0.19 , 0.22 , 0.23 , 0.17 , 0.36 , 0.33 , 0.30 , 0.39 , 0.35 , 0.27 , 0.20 , 0.22 , 0.24 , 0.16 , 0.36 , 0.30 , 0.31 , 0.39 , 0.33 , 0.25 , 0.23 , 0.13 , 0.16 , 0.18 , 0.20 , 0.16 , 0.15 , 0.09 , 0.18 , 0.21 , 0.20 , 0.14 , 0.17 , 0.18 , 0.22 , …Run Code Online (Sandbox Code Playgroud) 可能这是一个简单的问题,
有谁知道如何隐藏boxplot()R中的默认轴x标签?
它应该很简单,但我搜索了几个网站和boxplot帮助,但找不到答案.
我创建了一个盒子图,左边的数据是连续变量,右边的数据有大约10个独特的选项.当我创建箱图时,我看不到标签.如何让它显示所有标签,可能是垂直标签?
boxplot(data$Rate ~ as.factor(data$Purpose))
Run Code Online (Sandbox Code Playgroud)
我环顾四周,无法弄清楚我想要追随的是什么.
我正在制作一个箱形图,其中x并fill映射到不同的变量,有点像这样:
ggplot(mpg, aes(x=as.factor(cyl), y=cty, fill=as.factor(drv))) +
geom_boxplot()
Run Code Online (Sandbox Code Playgroud)

如上例所示,我的框的宽度在不同的x值上有所不同,因为我没有所有可能的组合x和fill值,所以.
我希望所有的盒子宽度相同.可以这样做(理想情况下不需要操纵底层数据框,因为我担心添加假数据会在进一步分析时引起混淆)?
我的第一个想法是
+ geom_boxplot(width=0.5)
Run Code Online (Sandbox Code Playgroud)
但这没有用; 它调整给定x因子水平的整套箱图的宽度.
这篇文章 几乎看起来很相关,但我不太清楚如何将它应用到我的情况中.使用+ scale_fill_discrete(drop=FALSE)似乎不会改变条的宽度.
我想按类别和Z数据在数据框中绘制一个列的方框图.如何按中位数按降序对箱线图进行排序?dfXY
import pandas as pd
import random
n = 100
# this is probably a strange way to generate random data; please feel free to correct it
df = pd.DataFrame({"X": [random.choice(["A","B","C"]) for i in range(n)],
"Y": [random.choice(["a","b","c"]) for i in range(n)],
"Z": [random.gauss(0,1) for i in range(n)]})
df.boxplot(column="Z", by=["X", "Y"])
Run Code Online (Sandbox Code Playgroud)
请注意,这个问题非常相似,但它们使用不同的数据结构.我对pandas比较陌生(并且一般只在python上做了一些教程),所以我无法弄清楚如何使我的数据与那里发布的答案一起工作.这可能更像是重塑而不是绘图问题.也许有一个解决方案使用groupby?
我有这个数据框
set.seed(1234)
x <- rnorm(80, 5, 1)
df <- data.frame(groups = c(rep("group1",20),
rep("group2",20),
rep("group3",20),
rep("group4",20)),
value = x,
type = c(rep("A", 10),
rep("B", 10),
rep("A", 10),
rep("B", 10),
rep("A", 10),
rep("B", 10),
rep("A", 10),
rep("B", 10)))
Run Code Online (Sandbox Code Playgroud)
我想把它描绘成小提琴情节,与狭窄的盒子图对齐并按照分组
变量类型:
ggplot(data = df, aes(x = groups, y = value, fill = type)) +
geom_violin()+
geom_boxplot(width=.1, outlier.colour=NA)
Run Code Online (Sandbox Code Playgroud)
然而,箱形图并没有与大提琴图对齐,告诉ggplot做这样覆盖的缺失参数是什么?
谢谢!
我在这篇文章中看到了这个精彩的箱形图(图2).

正如您所看到的,这是一个箱线图,其上叠加了黑点的散布:x索引黑点(按随机顺序),y是感兴趣的变量.我想用Matplotlib做类似的事情,但我不知道从哪里开始.到目前为止,我在网上发现的箱形图并不那么酷,看起来像这样:

matplotlib的文档:http: //matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.boxplot
如何着色箱形图:https: //github.com/jbmouret/matplotlib_for_papers#colored-boxes