根据类标签

时间:2017-12-01 13:14:18

标签: python matplotlib plotly

我有一个具有观察频率的数据集。我正在做探索性数据分析。以下是样本。

x1    x2    x3    x4    label
15    10    1     2      0
3     2     15    10     1
0    1      10    11     1
9    7      1     1      0

我想使用在x1,x2....xn使用x-axis的python绘制单个绘图,并在y轴使用每个记录的频率,但颜色根据标签编码绘图,标签为蓝色,标签为红色目的是可视化类标签和变量值之间是否存在关联。如何在python中做到这一点?像这样的东西。 enter image description here

但是它在x轴上使用一个变量而在y轴上使用另一个变量。我想在x轴上使用所有变量,在Y轴上使用它们的频率。

1 个答案:

答案 0 :(得分:0)

如果这个问题听起来含糊不清,我很抱歉。我是python和数据科学的新手。以下代码给出了所需的输出。我在这里发帖,以防其他人需要帮助。

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
np.random.seed(123)

# Generate Data
nbr_dim = 10
y = np.random.random((nbr_dim))
x = [1,2,3,4,5,6,7,8,9,10]
labels = np.random.choice([0, 1], nbr_dim)
df = pd.DataFrame(dict(x=x, y=y, label=labels))

groups = df.groupby('label')

# Plot
fig, ax = plt.subplots()
ax.margins(0.05)
for name, group in groups:
    ax.plot(group.x, group.y, marker='o', linestyle='', ms=12, label=name)
ax.legend()

plt.show()

Joe Kingston给出的原始答案Here