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

如何在matplotlib的hist2d绘图中提升坐标轴刻度分辨率

修改2D直方图坐标轴刻度为0-10所有整数

你可以通过matplotlib的plt.xticks()和plt.yticks()函数直接指定要显示的刻度值,实现显示0到10的所有整数刻度。具体做法是生成包含0到10的整数序列,传递给这两个函数即可。

修改后的完整代码如下:

import matplotlib.pyplot as plt
import numpy as np

# Fixing random state for reproducibility
np.random.seed(19680801)

x, y = np.random.rand(2, 1000) * 10
hist, xedges, yedges, im = plt.hist2d(x, y, bins=10, range=[[0, 10], [0, 10]])

for i in range(len(hist)):
    for j in range(len(hist[i])):
        plt.text(xedges[i] + (xedges[i + 1] - xedges[i]) / 2,
                 yedges[j] + (yedges[j + 1] - yedges[j]) / 2,
                 hist[i][j], ha="center", va="center", color="w")

# 设置X、Y轴刻度为0到10的所有整数
plt.xticks(np.arange(0, 11))
plt.yticks(np.arange(0, 11))

plt.show()

说明

  • np.arange(0, 11)会生成[0,1,2,...,9,10]的整数序列,刚好覆盖你需要的刻度范围。
  • 调用plt.xticks()和plt.yticks()将这个序列设置为坐标轴的显示刻度,替换默认的间隔为2的刻度。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 09:05:06