Python 错误:绘图时没有数值数据

Python Error: No numeric data when plotting

提问人:Nuno Can 提问时间:11/15/2023 更新时间:11/15/2023 访问量:19

问:

我想按工作日和小时绘制条形图。当我限制数据时,它向我显示以下消息:

TypeError:没有要绘制的数值数据

我的代码适用于整个数据集。但是,当数据受到限制时,它不起作用。

我已经检查了数据集中的非数字数据,这不是问题(不能说它适用于更大的数据集)。我怀疑这与某些小时/天根本没有数据这一事实有关。

当我定义较新的数据时,当我遇到问题时,如果包含所有内容或更多数据就可以了。

data_last_week = data_excel[data_excel["date"] >= "2023-11-07"] 

我添加了这两行来尝试解决问题
grouped_data=grouped_data.astype(float) grouped_data = grouped_data.fillna(0)

def create_bar_plot_after(data, column, colors):
    grouped_data = data.groupby(["weekday", "hours"])[column].mean().unstack()
    grouped_data=grouped_data.astype(float)
    grouped_data = grouped_data.fillna(0)
    # Plotting
    plt.figure()  # Create a new figure to avoid overlapping with previous plots
    grouped_data2.plot(kind="bar", color=colors, alpha=0.7, edgecolor='black')  # Add edgecolor for better separation
    plt.xlabel("Weekday")
    plt.ylabel(column)
    plt.title(f"{column} by Weekday and Hour after {str(seven_days_ago)}")
    plt.xticks(rotation=45)
    plt.legend(title='Hour', bbox_to_anchor=(1.05, 1), loc='upper left')  # Move legend outside the plot for better visibility

    # Save the plot to an image file (optional)
    plt.savefig(os.path.join(folder_path, f"{file_name}_{column}_by_weekday_hour_after_{str(seven_days_ago)}.png"), bbox_inches='tight')

create_bar_plot_after(data_last_week, "atendeu", colors)
python 绘图 条形图 数字

评论


答: 暂无答案