# -*- 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()
matplotlib实践——学习代码
最新推荐文章于 2024-06-07 11:26:56 发布
本文详细介绍了使用Matplotlib库进行数据可视化的方法,包括线条图、散点图、柱状图等基本图形的绘制,以及如何设置图表的各种属性如标题、图例、网格线等。
7万+

被折叠的 条评论
为什么被折叠?



