IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> Matplotlib基础入门 -> 正文阅读

[人工智能]Matplotlib基础入门

1.Matplotlib三层?

? ? ? ? Matplotlib三层结构_xiaoyaGrace的博客-CSDN博客

2.折线图与基本的绘画功能

import matplotlib.pyplot as plt
import random
from matplotlib.font_manager import FontProperties #该函数设置局部字体变量
import matplotlib
#显示中文 C:\Windows\Fonts 在这里找你能用的字体
#方法一:
# font = FontProperties(fname=r"C:\Windows\Fonts\SIMYOU.TTF",size=12)#在路径下找相应的字体定义好局部字体
#方法二: 这是设置全局变量
font = {'family':'SimHei','size':12}
matplotlib.rc("font",**font)
#需求:画出某城市11点到12点一小时内每分钟的温度变化折线图,温度范围在15-19度
#准备数据 x,y
x = range(60)
y = [random.uniform(15,19) for i in x]
y_beijing = [random.uniform(1,3) for i in x] #北京的状况
#创建画板
plt.figure(figsize=(60,18),dpi=80)
#绘制图像
plt.plot(x,y,color="r",linestyle="--",label="上海")
plt.plot(x,y_beijing,color="b",label="北京")
#显示图例
plt.legend()#是默认 详情其他可看p11最后几分钟
#调整x,y的刻度
x_label = ["11点{}分".format(i) for i in x]#设置合适的x轴标签
plt.xticks(x[::5],x_label[::5])#将标签与x轴的表示一一对应
plt.yticks(range(0,40,5))
#添加网格显示
plt.grid(linestyle="--",alpha=0.5)#true 显示网格 alpha表示透明度
#添加描述信息
plt.xlabel("时间")
plt.ylabel("温度")
plt.title("某城市十一点到十二点的温度变化")
#查看图像
plt.show()

?3.多个坐标系显示,面向对象的画图方法

import matplotlib.pyplot as plt
import random
from matplotlib.font_manager import FontProperties #该函数设置局部字体变量
import matplotlib
#显示中文 C:\Windows\Fonts 在这里找你能用的字体
#方法一:
# font = FontProperties(fname=r"C:\Windows\Fonts\SIMYOU.TTF",size=12)#在路径下找相应的字体定义好局部字体
#方法二: 这是设置全局变量
font = {'family':'SimHei','size':12}
matplotlib.rc("font",**font)
#需求:画出某城市11点到12点一小时内每分钟的温度变化折线图,温度范围在15-19度
#准备数据 x,y
x = range(60)
y = [random.uniform(15,19) for i in x]
y_beijing = [random.uniform(1,3) for i in x] #北京的状况
#创建画布
figure,axes = plt.subplots(nrows=1,ncols=2,figsize=(20,8),dpi=80)#创建多个坐标系,一行两列
#绘制图像
axes[0].plot(x,y,color="r",linestyle="--",label="上海")
axes[1].plot(x,y_beijing,color="b",label="北京")
#显示图例
axes[0].legend()#是默认 详情其他可看p11最后几分钟
axes[1].legend()
#调整x,y的刻度
x_label = ["11点{}分".format(i) for i in x]#设置合适的x轴标签
axes[0].set_xticks(x[::5])#将标签与x轴的表示一一对应
axes[0].set_xticklabels(x_label[::5])
axes[0].set_yticks(range(0,40,5))
axes[1].set_xticks(x[::5])#将标签与x轴的表示一一对应
axes[1].set_xticklabels(x_label[::5])
axes[1].set_yticks(range(0,40,5))
#添加网格显示
axes[0].grid(linestyle="--",alpha=0.5)#true 显示网格 alpha表示透明度
axes[1].grid(linestyle="--",alpha=0.5)#true 显示网格 alpha表示透明度
#添加描述信息
axes[0].set_xlabel("时间")
axes[0].set_ylabel("温度")
axes[0].set_title("上海十一点到十二点的温度变化")
axes[1].set_xlabel("时间")
axes[1].set_ylabel("温度")
axes[1].set_title("北京十一点到十二点的温度变化")
#查看图像
plt.show()

4.折线的应用场景:某事物,某指标随时间的变化状况

? ? ? ? 也可以画平滑的函数图像,但是需要将点描的多一点?

import numpy as np
import matplotlib.pyplot as plt
#画y=2*x*x的图像
x = np.linspace(-1,1,1000)#创建-1到1之间1000个数,前后都包括
y = 2*x*x
#创建画布
plt.figure(figsize=(20,8),dpi=80)
#绘制图像
plt.plot(x,y)
#添加网格显示
plt.grid(linestyle="--",alpha=0.5)
#显示图像
plt.show()

5.散点图:主要是进行比对不同变量间的关系或者规律

#探究房屋面积和房屋价格的关系
import matplotlib.pyplot as plt
x = [255.98,247.07,253.14,457.85,241.58,301.01,20.67,288.64,163.56,120.06,207.83,342.75,
     147.9,53.06,224.72,29.51,21.61,483.21,245.25,399.25,343.35]#面积
y = [196.63,203.88,210.75,372.74,202.41,247.61,24.9,239.34,140.32,104.15,176.84,288.23,
     128.79,49.64,191.74,33.1,30.74,400.02,205.35,330.64,283.45]#房屋价格
#创建画布
plt.figure(figsize=(20,8),dpi=80)
#绘制图像
plt.scatter(x,y)
#展示图像
plt.show()

6.柱状图:统计/对比不同类别的数据

#对比每部票房的收入
import matplotlib.pyplot as plt
import matplotlib
font={'family':'SimHei','size':12}
matplotlib.rc('font',**font)
#------------电影票房收入对比-----------------------
# move = ['雷神3:诸神黄昏','正义联盟','东方快车谋杀案','寻梦环游记','全球风暴','降魔传','追捕','七十七天','密战','lol']
# tickets = [73853,57767,22354,15969,8725,8716,8318,7916,6764,52222]
# #创建画布
# color = ['b','r','g','y','c','m','y','k','c','g']
# plt.figure(figsize=(20,8),dpi=80)
# #绘制图像
# plt.bar(range(len(move)),tickets,color=color)#这里只能先renge长度,建立好长度之后在根据xtick改刻度
# #改变x的刻度
# plt.xticks(range(len(move)),move)
# #添加标题
# plt.title("电影票房收入显示")
# #添加网格显示
# plt.grid(linestyle="--",alpha=0.5)
# #展示图像
# plt.show()

# #--------------------对比同日票房收入------------------------
# movie_name = ['雷神3:诸神黄昏','正义联盟','寻梦环游记']
# first_day = [10587.6,10062.5,1275.7]
# first_weekend = [36224.9,34479.6,11830]
# #创建画布
# plt.figure(figsize=(20,8),dpi=80)
# #绘制图像
# plt.bar(range(3),first_day,width=0.2,label='首日票房')
# plt.bar([0.2,1.2,2.2],first_weekend,width=0.2,label='首周票房')
# #修改刻度
# plt.xticks([i+0.1 for i in range(3)],movie_name)
# #显示图例
# plt.legend()
# #显示图像
# plt.show()

7.直方图:反应一组数据的分布状况

#电影时长分布状况
import matplotlib.pyplot as plt
import matplotlib
font={"family":"SimHei","size":12}
matplotlib.rc("font",**font)
#获取数据
time = [131,98,125,131,124,139,131,117,128,108,135,138,131,102,107,135,139,134,136,122,118,123,128,124]
#创建画布
plt.figure(figsize=(20,8),dpi=80)
#绘画 组数=(最大值-最小值)//组距
distance = 2
#group_num = (max(time)-min(time))//distance 有可能产生偏差
plt.hist(time,bins=range(min(time),max(time)+2,distance))#还有个参数normed=true表示y轴显示频率
#x的刻度
plt.xticks(range(min(time),max(time)+2,distance))
#添加表格
plt.grid(linestyle='--',alpha=0.5)
#标题
plt.title("直方图")
#展示
plt.show()

8.饼图:数据的占比情况,但是超过九个,就不建议用饼图了,最好用柱状图

#电影时长分布状况
import matplotlib.pyplot as plt
import matplotlib
font={"family":"SimHei","size":12}
matplotlib.rc("font",**font)
#获取数据
move = ['雷神3:诸神黄昏','正义联盟','东方快车谋杀案','寻梦环游记','全球风暴','降魔传','追捕','七十七天','密战','lol']
tickets = [73853,57767,22354,15969,8725,8716,8318,7916,6764,52222]
color = ['b','r','g','y','c','m','y','k','c','g']
#创建画布
plt.figure(figsize=(20,8),dpi=80)
#绘制饼图
plt.pie(tickets,labels=move,colors=color,autopct="%1.2f%%")
plt.axis('equal')
#显示图例
plt.legend()
#展示
plt.show()

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-10-13 11:27:11  更:2021-10-13 11:27:46 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 10:18:01-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码