我正在尝试绘制一个大型数据集的折线图,我想在其中将 y 设置为“计数”值。
这是一个模拟 df :
my = pd.DataFrame(np.array(
[['Apple', 1],
['Kiwi', 2],
['Clementine', 3],
['Kiwi', 1],
['Banana', 2],
['Clementine', 3],
['Apple', 1],
['Kiwi', 2]]),
columns=['fruit', 'cheers'])
我希望情节使用“干杯”作为 x,然后为每个“水果”和“干杯”次数设置一行
编辑:折线图可能不是最好的追求,请给我建议。我想要这样的东西:
在大数据集中可能会有一个但不是几个“零”,也许我应该做一个更大的模拟 df。
最佳答案
我看到你已经接受了一个答案,但是另一种方法是这样的
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
my = pd.DataFrame(np.array([['Apple', 1],
['Kiwi', 2],
['Clementine', 3],
['Kiwi', 1],
['Banana', 2],
['Clementine', 3],
['Apple', 1],
['Kiwi', 2]]),
columns=['fruit', 'cheers'])
my_pivot = my.pivot_table(index = 'cheers',
columns = 'fruit',
fill_value = 0,
aggfunc={'fruit':len})['fruit']
my_pivot.plot.line()
plt.tight_layout()
plt.show()
输出:
关于python - 带计数的 Matplotlib 折线图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56181597/