将pandas数据集转换为matplotlib图:有没有方法将值附加到y值列表中



在将pandas数据集转换为matplotlib绘图可用的数据集时,y值被制成一个列表。在想要将自己的值附加到列表中时,我遇到了一个错误,我不确定如何处理。

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
# pd.set_option('display.max_columns', None)
# Basic Data Set Cleanse
data_BM = pd.read_csv("C:\Users\user\Desktop\matplot and pand\bigmart_data.csv")
data_BM = data_BM.dropna(how='any')
data_BM = data_BM.reset_index(drop=True)
# Graphed Mean Sales for Each Sized Outlet -
sales_by_outlet_size = data_BM.groupby('Outlet_Size').Item_Outlet_Sales.mean()[:10]
sales_by_outlet_size.sort_values(inplace=True)
print(sales_by_outlet_size.head())
x = sales_by_outlet_size.index.tolist()
y = sales_by_outlet_size.values.tolist()
# # # # #
# This is where I am confused. If I wanted to do something like -
y.append(3000)
# or
y += [3000]
# It doesn't go well
# # # # #
plt.xlabel('Outlet Size')
plt.ylabel('Mean Sales')
plt.title('Mean Sales by Store Size')
plt.xticks(labels=x, ticks=np.arange(len(x)))
plt.bar(x, y, color=['red', 'orange', 'magenta'])
plt.show()

有没有我不知道的规则
y.append(3000(的错误:
值错误:形状不匹配:对象无法广播到单个形状的

由于使用的是y.append(3000)y += [3000],所以Y值比X多。再加一个X值,应该就可以了。

Yo不是对y.append(3000)y += [3000]有错误,而是对绘图生成有错误。添加一个Y值后,将少一个X值。附加一个X并检查自己。

相关内容

最新更新