python:matplotlib绘图 —— 绘制双Y轴图表 —— 双Y轴的坐标轴不同颜色
关键代码:
ax1.tick_params(axis='y', labelcolor='b')
ax2 = ax1.twinx()
ax2.tick_params(axis='y', labelcolor='r')
实际表现:
效果图:
全部代码:
点击查看代码
import numpy as np import matplotlib.pyplot as plt # 设置中文字体显示(如果系统支持) plt.rcParams['font.sans-serif'] = ['SimHei'] # Windows系统 plt.rcParams['axes.unicode_minus'] = False # 正确显示负号 # 模拟数据 user_nums = np.array([10, 50, 100, 200, 300, 400, 500]) # 用户数量 latency = 100 + 0.5 * user_nums + 0.002 * user_nums**2 # 网络延迟(非线性增长) success_rate = 100 - 0.1 * user_nums - 0.0003 * user_nums**2 # 任务成功率(百分比) # 绘制双Y轴图表 fig, ax1 = plt.subplots(figsize=(10, 6)) # 左侧Y轴:网络延迟 ax1.plot(user_nums, latency, 'b-o', linewidth=2, markersize=8, label='网络延迟') ax1.set_xlabel('用户数量', fontsize=12) ax1.set_ylabel('网络延迟 (ms)', color='b', fontsize=12) ax1.tick_params(axis='y', labelcolor='b') ax1.grid(linestyle='--', alpha=0.7) # 右侧Y轴:任务成功率 ax2 = ax1.twinx() ax2.plot(user_nums, success_rate, 'r--s', linewidth=2, markersize=8, label='任务成功率') ax2.set_ylabel('任务成功率 (%)', color='r', fontsize=12) ax2.tick_params(axis='y', labelcolor='r') # 标题和图例 plt.title('物联网计算卸载:用户数量对网络延迟与任务成功率的影响', fontsize=14) fig.legend(loc='upper right', bbox_to_anchor=(0.85, 0.85), fontsize=10) plt.tight_layout() plt.show()
本博客是博主个人学习时的一些记录,不保证是为原创,个别文章加入了转载的源地址,还有个别文章是汇总网上多份资料所成,在这之中也必有疏漏未加标注处,如有侵权请与博主联系。
如果未特殊标注则为原创,遵循 CC 4.0 BY-SA 版权协议。
标签:
杂谈
posted on 2025-03-02 14:14 Angry_Panda 阅读(11) 评论(0) 编辑 收藏 举报
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2024-03-02 新手入门深度学习:在不使用Google的情况下如何在国内获得免费的算力 —— 算力共享,驱动人工智能创新的新引擎
2020-03-02 【转载】 优必选悉尼 AI 研究院何诗怡:基于课程学习的强化多标签图像分类算法 | 分享总结