Python 在日志图上显示更多刻度标签

Python 在日志图上显示更多刻度标签,python,matplotlib,Python,Matplotlib,假设我有一个如下所示的日志图 我试图在y轴和x轴的刻度上显示更多的数字。刻度应该如图所示,显示每个日志的更多指数。 我尝试使用tick_参数,但对我的代码无效: plt.figure(figsize=(20,10)) plt.scatter(y_hat_rdg, y_test, s=30, c='r', marker='+', zorder=10, label=None) plt.xlabel("Predicted Prices ($)", size=20) plt.ylabel("Actu

假设我有一个如下所示的日志图

我试图在y轴和x轴的刻度上显示更多的数字。刻度应该如图所示,显示每个日志的更多指数。

我尝试使用tick_参数,但对我的代码无效:

plt.figure(figsize=(20,10))
plt.scatter(y_hat_rdg, y_test, s=30, c='r', marker='+', zorder=10, label=None)
plt.xlabel("Predicted Prices ($)", size=20)
plt.ylabel("Actual Prices ($)", size=20)
plt.title("Actual Prices vs. Predicted Prices", size=25)
plt.xscale('log')
plt.yscale('log')
plt.xticks(fontsize=25)
plt.yticks(fontsize=25)
plt.tick_params( which='both') 
plt.plot([np.min(y_hat), np.max(y_hat)], [np.min(y_hat), np.max(y_hat)], label='RidgeCV Prediction Model')
plt.legend(loc=2, prop={'size': 20})
plt.show()
使用linspace的log10的方法之一:


你可以把你的数据以对数10为基数,以线性比例绘制。这就是我在第二个图中所做的
plt.figure(figsize=(10,5))
plt.plot(np.arange(10000, 500000), np.arange(10000, 500000))
plt.yscale('log')
plt.xscale('log')
plt.xticks(np.linspace(10000, 500000, 10), np.round(np.log10(np.linspace(10000, 500000, 10)),2))
plt.yticks(np.linspace(10000, 500000, 10), np.round(np.log10(np.linspace(10000, 500000, 10)),2))
plt.tight_layout()