matplotlib实践——学习代码

本文详细介绍了使用Matplotlib库进行数据可视化的方法,包括线条图、散点图、柱状图等基本图形的绘制,以及如何设置图表的各种属性如标题、图例、网格线等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# -*- coding: utf-8 -*-
"""
Created on Thu Sep  5 15:11:14 2019

@author: Administrator
"""

# 一、图表组成元素
import matplotlib.pyplot as plt
import numpy as np

x=np.linspace(0.5,10,1000)  # 0.5到10之间均匀的取1000个数
y=np.cos(x)
y1=np.random.randn(100)   # 标准正态分布中随机取100个数

plt.plot(x,y,ls="-",lw=2,label="plot figure")
   # ls:线条风格  lw:线条宽度  label:标记图形内容的标签文本
plt.legend()   # 显示图例
plt.show()

#==scatter=====寻找变量关系
x=np.linspace(0.05,10,1000)
y=np.random.rand(1000)  # 均匀分布

plt.scatter(x,y,label="scatter figure")   # 变量关系
plt.legend()
plt.show()

#==xlim=====设置x数值显示范围
x=np.linspace(0.05,10,1000)
y=np.random.rand(1000)

plt.scatter(x,y,label="scatter figure")
plt.legend()

plt.xlim(0.05,10)   #设置范围
plt.ylim(0,1)

plt.show()

#==xlabel=====设置x轴标签文本
x=np.linspace(0.05,10,1000)  
y=np.sin(x)

plt.plot(x,y,ls="-.",lw=2,c="c",label="plot figure") 
   # c:颜色  c:青色 b蓝色 g绿色 r红色 m品红 y黄色 k黑色 w白色
plt.legend()   
plt.xlabel("x-axis")
plt.ylabel("y-axis")
plt.show()

#==grid======绘制网格线
x=np.linspace(0.05,10,1000)  
y=np.sin(x)

plt.plot(x,y,ls="-.",lw=2,c="c",label="plot figure") 
plt.legend()

plt.grid(linestyle=":",color="r")  # 线条风格 颜色
plt.show()

#==axhline=====绘制平行于x轴的水平参考线
x=np.linspace(0.05,10,1000)  
y=np.sin(x)

plt.plot(x,y,ls="-.",lw=2,c="c",label="plot figure") 
plt.legend()

plt.axhline(y=0.0,c="r",ls="--",lw=2)  #y:水平参考线出发点
plt.axvline(x=4.0,c="r",ls="--",lw=2)
plt.show()

#==axvspan====绘制垂直于x轴的参考区域
x=np.linspace(0.05,10,1000)  
y=np.sin(x)

plt.plot(x,y,ls="-.",lw=2,c="c",label="plot figure") 
plt.legend()

plt.axvspan(xmin=4.0,xmax=6.0,facecolor="y",alpha=0.3)  
   #xmin:参考区域起始位置  facecolor:填充颜色  alpha:颜色透明度
plt.axhspan(ymin=0.0,ymax=0.5,facecolor="y",alpha=0.3)
plt.show()

#==annotate=====添加指向型注释文本
x=np.linspace(0.05,10,1000)  
y=np.sin(x)

plt.plot(x,y,ls="-.",lw=2,c="c",label="plot figure") 
plt.legend()

plt.annotate("maximum",xy=(np.pi/2,1.0),
         xytext=((np.pi/2)+1.0,.8),weight="bold",color="b",
        arrowprops=dict(arrowstyle="->",connectionstyle="arc3",
        color="b"))
    # xy:被注释图形的坐标  xytext:注释文本坐标  weight:字体粗细
    # arrowprops:箭头的属性字典
plt.show()

#==text=====无指向性注释
x=np.linspace(0.05,10,1000)  
y=np.sin(x)

plt.plot(x,y,ls="-.",lw=2,c="c",label="plot figure") 
plt.legend()

plt.text(3.10,0.09,"y=sin(x)",weight="bold",color="b")
plt.show()

#==title====添加标题
x=np.linspace(0.05,10,1000)  
y=np.sin(x)

plt.plot(x,y,ls="-.",lw=2,c="c",label="plot figure") 
plt.legend()

plt.title("y=sin(x)")
plt.show()

#==legend====标示不同图形的文本标签图例
x=np.linspace(0.05,10,1000)  
y=np.sin(x)

plt.plot(x,y,ls="-.",lw=2,c="c",label="plot figure") 
plt.legend(loc="lower left")    # 图例的地理位置
plt.show()

#二、统计函数绘制图形
#==bar=====柱状图
import matplotlib as mpl
import matplotlib.pyplot as plt

mpl.rcParams["font.sans-serif"]=["SimHei"]
mpl.rcParams["axes.unicode_minus"]=False

x=[1,2,3,4,5,6,7,8]
y=[3,1,4,5,8,9,7,2]

plt.bar(x,y,align="center",color="c",
 tick_label=["q","a","c","e","r","j","b","p"],hatch="/")
  # hatch: 柱形图花纹
  
plt.xlabel("箱子编号")
plt.ylabel("箱子重量(kg)")
plt.show()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值