matplotlib 绘制对数坐标轴并保留原坐标值

matplotlib绘制对数坐标轴非常方便,通过如下命令就可以设置:

plt.xscale("log")

但是x轴的坐标以科学计数法显示,不能以取对数前的值显示。有时会导致遮挡、重叠等麻烦事。
为了展示对数关系,但是又让x轴更加直观的显示原先的值,可以如下设置:

# 恢复原先的linear样式
plt.xscale("linear")
ticks = np.log10(X_origin)
plt.xticks(ticks,labels = X_origin.astype(int))

首先,提前对x坐标取对数。
通过xticks中的label变量可以替换坐标轴原定的值为label内的值。
展示效果图:

你可能感兴趣的:(python,数据挖掘,计算机视觉,数据分析)