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

plt.loglog()绘图仅X轴为对数刻度,如何实现双轴对数?

解决Matplotlib双对数刻度设置问题
  • 直接显式设置双对数刻度:
    你可以在现有代码中添加plt.yscale('log')强制开启Y轴对数刻度,或者分别设置X、Y轴的对数刻度来替代plt.loglog,示例代码如下:

    plt.subplot(4, 1, 1)
    plt.plot(w, A_e)
    plt.plot(w, A_l)
    plt.xscale('log')  # 开启X轴对数刻度
    plt.yscale('log')  # 开启Y轴对数刻度
    plt.xlabel('ω, рад/c')
    plt.ylabel('A(ω), дБ')
    plt.grid(which='both', axis='both', ls="-")
    # 自定义Y轴刻度(需先开启对数刻度再设置)
    plt.yticks([1e-3, 1e-2, 1e-1, 1, 10, 100], ['$10^{-3}$', '$10^{-2}$', '$10^{-1}$', '1', '10', '100'])
    
  • 排查无效原因:
    原代码中plt.loglog未生效Y轴对数刻度,大概率是A_e、A_l的数值范围过小,没有跨越多个数量级,导致对数刻度效果不明显。建议先检查数据的最大、最小值,确认是否适合用对数刻度展示。若数据本身是线性范围,强行设置对数刻度会看不到预期效果,需重新评估展示需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 11:43:10