【发布时间】:2018-11-23 14:13:24
【问题描述】:
我正在使用 Anaconda 安装中的 Python3.6.5。
我有 16 个数据文件,其中包含两列数据。我正在尝试制作一个在一个 4x4 图中显示所有数据的图。我已经设法将所有地块绘制在一个大的 4x4 地块上,但无法调整 X 和 Y 刻度。 X 值范围从 0 到 2000,Y 值范围从 0 到 4.5。
这是我当前的脚本:
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import math
ph_values = [1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0, 5.5, 6.0, 6.5, 7.0, 7.5, 8.0, 8.5]
all_xs = []
all_ys = []
for ph in ph_values:
xs = []
ys = []
with open('rmsd_ph' + str(ph) + '.dat', "r") as f:
for line in f:
if line[0] != "#":
x,y = line.split()
xs.append(float(x))
ys.append(float(y))
all_xs.append(xs)
all_ys.append(ys)
fig, axes = plt.subplots(nrows=math.ceil(len(ph_values)/4), ncols=4, figsize=(6,6))
axes = axes.flatten()
for index,ph in enumerate(ph_values):
axes[index].plot(np.asarray(all_xs[index]),np.asarray(all_ys[index]))
plt.xticks(np.arange(0, 2000, step=500))
plt.tight_layout()
plt.savefig('test.pdf')
plt.show()
当前脚本输出的内容如下所示。
如您所见,最后一张图调整了 X 轴。我还没有尝试调整 Y 轴,因为我没有成功调整 y 轴。
总的来说,我希望在 y 轴和 x 轴上都有 4 个刻度。
【问题讨论】:
-
在这种情况下什么不成功?你希望你的情节变成什么样子?
-
@ImportanceOfBeingErnest 我正在努力做到这一点,以便我在 x 轴上有四个刻度,在 y 轴上有 4 个刻度,或者通常能够控制每个刻度的 x 和 y 轴刻度情节。
-
但在您展示的代码中,最后一个图的轴上有 4 个刻度。
-
是的,这是让我感到困惑的部分。 SpghttCd 的答案让我更接近了。
标签: python python-3.x matplotlib plot axis-labels