当前位置: 首页 > news >正文

机器学习基础-matplotlib

一、相关知识点

二、plot

from pylab import mpl
# 设置显示中文字体
mpl.rcParams["font.sans-serif"] = ["SimHei"]
# 设置正常显示符号
mpl.rcParams["axes.unicode_minus"] = False
#%%#%%
import matplotlib.pyplot as plt
import random# 画出温度的变化图# 1. 准备x y坐标的数据
x = range(60)
y_shanghai = [random.uniform(13, 15) for i in x]  # 上海温度
y_beijing = [random.uniform(1, 6) for j in x]  # 北京温度
# random.uniform(15,18) 这个函数返回的是15,18之间的随机浮点数
# 利用了列表推导式# 1. 创建画布
plt.figure(figsize=(20,10),dpi=90)# 2.绘制折线图
plt.plot(x,y_shanghai,color="b",linestyle= "--",label="上海")
plt.plot(x,y_beijing,color="r",linestyle="--",label="北京") #linestyle="--" 虚线
# 增加以下代码 增加刻度
# 构造x轴的刻度标签
x_ticks_label = ["11点{}分".format(i) for i in x]
# 修改x轴的刻度、标签
plt.xticks(x[::5],x_ticks_label[::5],rotation=45)
# 修改y轴的刻度
y_ticks = range(40)
plt.yticks(y_ticks[::5])plt.xlabel("时间",fontsize = 30)
plt.ylabel("温度",fontsize = 30)plt.grid(True, linestyle='--', alpha=0.3, color='gray')  # 使用灰色网格# 保存图片到指定路径
plt.savefig("test.png")
plt.legend(loc="best")plt.tight_layout()
#3. 图像显示
plt.show()

三、subplot

import numpy as np
import matplotlib.pyplot as plt
import random# 图像风格模仿ggplot
plt.style.use('ggplot')import matplotlib
plt.rcParams['font.sans-serif'] = ['KaiTi']  # 使用黑体
plt.rcParams['axes.unicode_minus'] = False  # 解决负号显示问题
#%%# 图像风格模仿ggplot
plt.style.use('ggplot')# 生成数据
x = np.linspace(0,59,60)
y_shanghai = [random.uniform(13, 15) for i in x]  # 上海温度
y_beijing = [random.uniform(1, 6) for j in x]  # 北京温度#%%# 创建一个画布和两个子图
fig, axes = plt.subplots(2, 1, figsize=(10, 7), sharex=True)
axes = axes.flatten()# 定义x_ticks_label,y_ticks
x_ticks_label = ["11点{}分".format(i) for i in x]y_ticks = range(20)
# 绘制上海温度折线图
axes[0].plot(x, y_shanghai, c='r', label='上海',marker='o', linestyle='--')
# 绘制北京温度折线图
axes[1].plot(x, y_beijing, c='b', label='北京',marker='^', linestyle='-')
for ax in axes:print(ax)ax.set_ylabel("温度", fontsize=12)ax.grid(True, linestyle='--', alpha=0.3, color='gray')  # 使用灰色网格# 注意刻度和刻度标签是不一样的ax.set_xticks(x[::5])  # 每隔5分钟显示一个刻度ax.set_xticklabels(x_ticks_label[::5], rotation=40)  # 设置x轴刻度标签ax.set_yticks(y_ticks[::5])ax.set_xlabel("日期",fontsize=12)# 添加图例ax.legend(loc='upper right')  # 第一个坐标轴的图例axes[0].tick_params(axis='y', labelcolor='r')  # 设置第一个坐标轴的y轴刻度颜色
axes[0].set_ylabel('温度 (上海)', color='r')  # 第一个坐标轴的y轴标签axes[1].tick_params(axis='y', labelcolor='b')  # 设置第二个坐标轴的y轴刻度颜色
axes[1].set_ylabel('温度 (北京)', color='b')  # 第二个坐标轴的y轴标签# 标题
plt.suptitle('中午11点0分到12点之间的温度变化图', fontsize=16)plt.show()

http://www.dtcms.com/a/303458.html

相关文章:

  • clock_nanosleep系统调用及示例
  • node后端-JWT认证
  • Excel VBA宏的使用
  • 大模型应用班-第3课 从Excel到大屏:AI编程实战全解析 HW3 从零到一:香港疫情数据看板开发实战指南
  • 【GoLang #4】:Go 语言 函数详述(定义调用 | 匿名函数 闭包 | defer)
  • windows clion远程连接ubuntu运行调试nginx-1.22.1版本
  • 【优先级高,先补充】基于文本增强跨模态特征交互注意网络的多模态情感分析
  • SVN与GIT的区别,分别使用与哪些管理场景?
  • 《汇编语言:基于X86处理器》第10章 结构和宏(2)
  • Linux——线程池的模拟实现
  • 解决c++静态成员编译报错:‘xxx‘ is not a member of ‘xxx‘ 问题
  • 第五届先进算法与神经网络国际学术会议(AANN 2025)
  • vue项目进首页不加载全部资源
  • 【数据结构初阶】--二叉树(三)
  • ICDC自动化部署方案概述
  • 如何规范化项目执行
  • 2024年7月19日全国青少年信息素养大赛图形化(Scratch)编程小学低年级组复赛真题+答案解析
  • KubeSphere离线部署Kubernetes集群
  • “量子通信”
  • 系统远程配置
  • 概率有限自动机定义与示例
  • 智慧社区项目开发(二)——基于 JWT 的登录验证功能实现详解
  • 吃透 lambda 表达式(匿名函数)
  • mysql详细知识点
  • python中类变量 __slots__ 解析
  • Matplotlib(三)- 图表辅助元素
  • Vue3判断对象是否为空方法
  • 飞鹤困局:增长神话的裂痕
  • 嵌软面试——通信协议
  • 7.项目起步(1)