我正在尝试从我的数据框中生成饼图。我的想法是我有两列指示数据是否有效。我想生成一个包含四个类别的饼图,它们是有效点 (true, true) 以及显示无效数据的其他三个类别,指示数据是否由 Validity1、Validity2 或两者无效。所以,我有以下数据集: TimeStamp Avg. Values ... Validity1 Validity20 2015-02-14 20:30:00 5.1736 ... False True1 2015-02-14 20:40:00 16.6266 ... True True2 2015-02-14 20:50:00 12.7667 ... True True3 2015-02-14 21:00:00 11.6077 ... False True4 2015-02-14 21:10:00 19.6851 ... True True ... ... ... ... ...1000 2015-06-12 23:30:00 1.699 ... True False1001 2015-06-12 23:40:00 2.2468 ... False False1002 2015-06-12 23:50:00 3.1147 ... False False1003 2015-06-13 00:00:00 6.141 ... True False1004 2015-06-13 00:10:00 3.792 ... True False因此,我的一个想法是最初将数据划分如下:data_valid = data.loc[(data.SaDataValid == True) & (data.DataOK == True)]data_invalid_both = data.loc[(data.Validity1 == False) & (data.Validity2== False)]data_invalid_1 = data.loc[(data.Validity1 == True) & (data.Validity2 == False)]data_invalid_2 = data.loc[(data.Validity1 == False) & (data.Validity2 == True)]我的问题是如何从这一点开始绘制一个包含这 4 个类别的饼图,其中包括将 Validity1 和 Validity 2 的数据分成其他 3 个类别的条件。
1 回答
慕妹3242003
TA贡献1824条经验 获得超6个赞
你可以试试:
df.groupby(['Validity1','Validity2']).size().plot.pie()
测试数据:
np.random.seed(1) df = pd.DataFrame(np.random.choice([True, False], size=(100,2), p=[0.7,0.3]), columns = ['Validity1','Validity2'])
输出:
添加回答
举报
0/150
提交
取消