You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何调整df.hist直方图X轴刻度,使其显示更多细分值

解决DataFrame直方图X轴刻度细分问题

你当前循环绘制DataFrame列的直方图时,X轴默认只显示间隔较大的刻度(如0、5、10),要改成显示0到10的每个整数刻度,只需在循环中给每个子图手动设置X轴刻度即可。

修改后的完整代码如下:

import matplotlib.pyplot as plt
import pandas as pd

listedvariables = ['distance','duration','sleepiness_bed','sleepiness_waking','normal_time_of_wakeup','number_of_times_wakeup_during_night','time_spent_awake_during_night_mins','time_of_going_to_sleep','time_to_fall_asleep_mins','sleep_onset_time','sleep_period_length_mins','total_sleep_duration_mins','time_in_bed_mins','sleep_efficiency','sleep_bout_length_mins','mid_point_of_sleep','sleepiness_resolution_index']

for var in listedvariables: 
    fig = newerdf[[var]].hist(figsize=(30,20))
    for ax in fig.ravel():
        ax.title.set_size(40)
        ax.tick_params(axis='x', labelsize=40)
        ax.tick_params(axis='y', labelsize=40)
        # 强制设置X轴显示0到10的所有整数刻度
        ax.set_xticks(range(0, 11))
    plt.tight_layout()

关键说明:

  • 将原循环的索引遍历改为直接遍历变量名,代码可读性更强
  • ax.set_xticks(range(0,11))会生成0、1、2...10的序列,强制X轴显示这些细分刻度
  • 如果其他列的X轴数值范围不同,可根据实际数据调整range参数,比如某列最大值为15,就改为range(0,16)

内容的提问来源于stack exchange,提问作者Caledonian26

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 00:40:59