Pyplot 将轴上的所有值堆叠在一个位置

问题描述 投票:0回答:1

enter image description here我生成的 pyplot 图将列表的所有值堆叠在一个位置上。这有什么解释吗?

作为参考,n_vec 是一个范围从 100 到 100,000 的整数列表,te_scores 是一个范围从 0.85 到 0.87 的整数列表

我试过设置 y 轴的限制并增加刻度上的小数位数,但这些都没有导致 y 轴不堆叠

matplotlib
1个回答
0
投票

n_vec
是从 100 到 100,000 的整数列表,
te_scores
integers floats 的列表,范围从 0.85 到 0.87

那么你不应该将轴的纵横比设置为 1。这将生成你拥有的压扁图形
检查 set_aspect 文档

你的代码没有

ax.set_aspect(1)

n_vec = np.random.randint(100, 100000, size=100)
te_scores = 0.85 + np.random.rand(100) * 2 / 100

plt.figure(figsize=(5, 5))
ax = plt.gca()
ax.set_ylim([0.85, 0.87])
ax.scatter(n_vec, te_scores, color=(0, 0, 1, 0.3), s=100)

结果:

© www.soinside.com 2019 - 2024. All rights reserved.