Matplotlib模块

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Matplotlib模块相关的知识,希望对你有一定的参考价值。


目录

  • ​​Matplotlib​​
  • ​​ 导包​​
  • ​​ 注​​
  • ​​点线图(.plot())​​
  • ​​代码​​
  • ​​生成图形​​
  • ​​参数参考​​
  • ​​柱状图(.bar())​​
  • ​​代码​​
  • ​​生成图形​​
  • ​​参数参考​​
  • ​​饼状图(.pie())​​
  • ​​代码​​
  • ​​生成图形​​
  • ​​参数参考​​
  • ​​散点图(.scatter())​​
  • ​​代码​​
  • ​​生成图形​​
  • ​​参数参考​​

Matplotlib

导包

import matplotlib as mpl
import matplotlib.pyplot as plt
#导入numpy模块
import numpy as np

#用来正常显示中文标签
plt.rcParams[font.sans-serif]=[SimHei]
#用来正常显示负号
plt.rcParams[axes.unicode_minus]=False

点线图(.plot())

代码

#x坐标采样点生成
x=np.arange(0,11,0.2)
#计算对应y的正弦值
y=np.sin(x)
#控制图形格式为蓝色带星的虚线
plt.plot(x,y,color=r,marker=D,linestyle=--,linewidth=1,alpha=0.5,label=sin)
#显示label
plt.legend()
#横坐标说明
plt.xlabel(横坐标说明)
#纵坐标说明
plt.ylabel(纵坐标说明)
#显示图形
plt.show()

生成图形


Matplotlib模块_数据

参数参考


Matplotlib模块_Java_02

Matplotlib模块_Java_03

Matplotlib模块_数据_04

柱状图(.bar())

代码

#柱状图数据
animal_speed=dog:(48,#7199cf),
cat: (45, #4fc4aa),
cheetah: (120, #e1a7a2)
#分离数据
x_key = animal_speed.keys()
value = animal_speed.values()
#分离y轴值和颜色
speed = [i[0] for i in value]
color = [i[1] for i in value]
#绘制柱状图
bars = plt.bar(x_key,speed,width = 0.4,color = r,edgecolor = black)
#给每一个柱子赋予不同的颜色
for c,b in zip(color,bars):
b.set_color(c)
#添加文字描述,%d(km/h)%y格式化输出文本,ha控制横向居中,va纵向在柱子顶端
#text(x横坐标,y纵坐标,显示数据,水平对齐,垂直对齐)
for x,y in zip(x_key,speed):
plt.text(x,y,%d(km/h)%y,ha = center,va = bottom)
#x,y 轴标签
plt.xlabel(animal)
plt.ylabel(speed)
#显示标题
plt.title(动物速度)
#显示图形
plt.show()

生成图形


Matplotlib模块_数据_05

参数参考


Matplotlib模块_柱状图_06

饼状图(.pie())

代码

# 创建一个字典对象
pg_langs=Java:(30,#7B68EE),Python:(25,#EEC900),
C#:(15,#8E388E),php:(7,#00CD66),
html5:(13,#FF8C00),Database:(10,#8B5A00)
#各个部分的占比(必选参数)
per = [i[0] for i in pg_langs.values()]
#颜色的取值
colors =[i[1] for i in pg_langs.values()]
#赋予每一块一个标签,(标签,占比)
labels = [ \\n.format(pg,per) for pg,per in zip(pg_langs.keys(),per)]
#explode描述各部分距离中间点多长
explode= [0,0,0,0.4,0,0]
#必选参数,占比(占比之和100)
#labels,各部分标签值
#labeldistance,标签距离中间点的距离
#colors,注意加s,修改颜色;
#shadow加不加阴影,默认为False
#radius,圆的半径,默认为1
plt.pie(per,labels =labels,labeldistance=0.5,colors= colors,explode = explode,shadow= False,radius=1)
plt.show()

生成图形


Matplotlib模块_Java_07

参数参考

#explode 描述各部分距离中间点多长 如:explode= [0,0,0,0.4,0,0]
#part 必选参数,占比(占比之和100) 如:per= [30, 25, 15, 7, 13, 10]
#labels,各部分标签值 如:labels= [‘Java\\n30’, ‘Python\\n25’, ‘C#\\n15’, ‘PHP\\n7’, ‘HTML5\\n13’, ‘Database\\n10’]
#labeldistance 标签labels 距离中间点的距离
#colors,注意加s,修改颜色; 如:[’#7B68EE’, ‘#EEC900’, ‘#8E388E’, ‘#00CD66’, ‘#FF8C00’, ‘#8B5A00’]
#shadow加不加阴影,默认为False
#radius,圆的半径,默认为1

散点图(.scatter())

代码

x =  np.random.randn(1,1000)
y = np.random.randn(1,1000)
T = np.arctan2(x,y)

plt.scatter(x,y,c=T,s=25,alpha = 0.4,marker=^)
plt.show()

生成图形


Matplotlib模块_柱状图_08

参数参考

散点的颜色 T
散点的大小 s
散点的透明度 alpha
散点的形状 marker


以上是关于Matplotlib模块的主要内容,如果未能解决你的问题,请参考以下文章

matplotlib 画图的相关设置:坐标轴刻度字体、大小等

matplotlib如何获取坐标轴刻度值?

matplotlib坐标轴设置-老鱼学matplotlib

Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围

在 matplotlib 中将一些值绘制到极坐标图

用Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围