python画区间统计图
时间: 2023-04-05 22:01:32 浏览: 196
可以使用 matplotlib 库中的 boxplot 函数来画区间统计图。具体操作可以参考以下代码:
```python
import matplotlib.pyplot as plt
import numpy as np
# 生成数据
data = np.random.normal(size=(100, 4))
# 画图
fig, ax = plt.subplots()
ax.boxplot(data)
ax.set_xticklabels(['A', 'B', 'C', 'D'])
ax.set_ylabel('Value')
ax.set_title('Boxplot')
plt.show()
```
这段代码会生成一个包含四个区间的区间统计图,每个区间表示一个变量的分布情况。其中,横轴标签为 A、B、C、D,纵轴表示变量的取值范围。
相关问题
python 自定义区间统计 并做柱形图
可以使用 Python 中的 Matplotlib 库来绘制柱形图,并使用 Pandas 库来处理数据。以下是一个示例代码,该代码从用户输入中读取一组数据,将其分成若干个区间,并计算每个区间中数据的数量,最后将结果绘制成柱形图。
```python
import pandas as pd
import matplotlib.pyplot as plt
# 读取用户输入的数据
data = input("请输入一组数据,以逗号分隔:").split(",")
data = [float(x.strip()) for x in data]
# 定义区间的上下限和区间宽度
lower_limit = min(data)
upper_limit = max(data)
interval_width = (upper_limit - lower_limit) / 10
# 使用 Pandas 将数据分组并统计数量
df = pd.DataFrame(data, columns=["value"])
df["interval"] = pd.cut(df["value"], bins=10, include_lowest=True, labels=False)
counts = df["interval"].value_counts().sort_index()
# 绘制柱形图
plt.bar(counts.index * interval_width + lower_limit, counts.values, width=interval_width, align="edge")
plt.xlabel("区间")
plt.ylabel("数量")
plt.title("区间统计柱形图")
plt.show()
```
在上面的代码中,我们首先读取用户输入的数据,并计算出区间的上下限和宽度。然后,我们使用 Pandas 的 `cut` 函数将数据分组成若干个区间,并使用 `value_counts` 函数统计每个区间中数据的数量。最后,我们使用 Matplotlib 的 `bar` 函数绘制柱形图,并设置 x 轴的刻度为区间的中心点。运行上面的代码,您将看到一个区间统计柱形图的窗口弹出。
python画粒径分布图
要画粒径分布图,一般我们需要先获取粒径数据,并将其按照一定的粒径区间进行分组统计。下面是一个简单的 Python 代码示例,可以实现从 Excel 文件中读取粒径数据,按照一定区间统计粒径数量,最终绘制出粒径分布图。
首先,我们需要安装 pandas 和 matplotlib 库,使用 pip 命令即可:
```
pip install pandas matplotlib
```
接着,我们可以按照以下步骤进行编码:
1. 导入库和数据
```python
import pandas as pd
import matplotlib.pyplot as plt
# 读取 Excel 数据
data = pd.read_excel('data.xlsx')
```
2. 定义粒径区间和统计函数
```python
# 粒径区间
bins = [0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
# 统计函数
def count_particles(d, bins):
counts = []
for i in range(len(bins)-1):
count = ((d >= bins[i]) & (d < bins[i+1])).sum()
counts.append(count)
return counts
# 统计粒径数量
counts = count_particles(data['d'], bins)
```
3. 绘制粒径分布图
```python
# 绘制直方图
plt.bar(bins[:-1], counts, width=10)
# 设置坐标轴标签
plt.xlabel('粒径区间')
plt.ylabel('粒径数量')
# 显示图形
plt.show()
```
这样就可以得到一个简单的粒径分布图了。需要注意的是,上述代码中的“data.xlsx”是一个 Excel 文件,它包含一列名为“d”的数据,表示粒径大小。如果你的数据格式不同,需要相应地修改代码。同时,粒径区间和统计函数也可以根据实际情况进行修改。
阅读全文