matplotlib 柱状图_数据分析matplotlib做图

1,Matplotlib简介及图表窗口

2 ,图表的基本元素

3,图表的样式参数

4,刻度、注解、图表输出

5,子图

6,基本图表绘制 plt.plot() (线形图、柱状图)

7,柱状图、堆叠图

8,面积图、填图、饼图

9,直方图

10,散点图

11,极坐标图

12,箱型图

导入Matplotlib进行画图时,一定记得导入以下代码

import numpy as np

import pandas as pd

import matplotlib as plt

#让图表直接在Jupyter Notebook中展示出来

%matplotlib inline

#解决中文乱码问题

plt.rcParams['font.sans-serif']='SimHei'

#设置成矢量图格式显示,使图更清晰

%config InlineBackend.figure_format='svg'

'''

1,Matplotlib简介及图表窗口

Matplotlib → 一个python版的matlab绘图接口,以2D为主,支持python、numpy、pandas基本数据结构,运营高效且有较丰富的图表库

'''

# 图表窗口1 → plt.show()

导入必备的几个库

matplotlib 柱状图_数据分析matplotlib做图_第1张图片

# 图表窗口2 → 魔法函数,嵌入图表

matplotlib 柱状图_数据分析matplotlib做图_第2张图片

# 图表窗口3 → 魔法函数,弹出可交互的matplotlib窗口

matplotlib 柱状图_数据分析matplotlib做图_第3张图片

# 图表窗口4 → 魔法函数,弹出matplotlib控制台

%matplotlib qt5

df = pd.DataFrame(np.random.rand(50,2),columns=['A','B'])

df.hist(figsize=(12,5),color='g',alpha=0.8)

# 可交互性控制台

# 如果已经设置了显示方式(比如notebook),需要重启然后再运行魔法函数

# 网页嵌入的交互性窗口 和 控制台,只能显示一个

matplotlib 柱状图_数据分析matplotlib做图_第4张图片

'''

2 ,图表的基本元素

图表内基本参数设置

'''

matplotlib 柱状图_数据分析matplotlib做图_第5张图片

matplotlib 柱状图_数据分析matplotlib做图_第6张图片

# 其他元素可视性

matplotlib 柱状图_数据分析matplotlib做图_第7张图片

matplotlib 柱状图_数据分析matplotlib做图_第8张图片

'''

3,图表的样式参数

linestyle(线性)、style(风格字符串)、color(颜色)、marker(数据点样式)

'''

# linestyle参数

matplotlib 柱状图_数据分析matplotlib做图_第9张图片

# marker参数

matplotlib 柱状图_数据分析matplotlib做图_第10张图片

matplotlib 柱状图_数据分析matplotlib做图_第11张图片

# color参数

matplotlib 柱状图_数据分析matplotlib做图_第12张图片

matplotlib 柱状图_数据分析matplotlib做图_第13张图片

# style参数

matplotlib 柱状图_数据分析matplotlib做图_第14张图片

# 整体风格样式

matplotlib 柱状图_数据分析matplotlib做图_第15张图片

'''

4,刻度、注解、图表输出

主刻度、次刻度

'''

# 刻度

matplotlib 柱状图_数据分析matplotlib做图_第16张图片

matplotlib 柱状图_数据分析matplotlib做图_第17张图片

# 注解

matplotlib 柱状图_数据分析matplotlib做图_第18张图片

# 图表输出

matplotlib 柱状图_数据分析matplotlib做图_第19张图片

matplotlib 柱状图_数据分析matplotlib做图_第20张图片

'''

5,子图

在matplotlib中,整个图像为一个Figure对象

在Figure对象中可以包含一个或者多个Axes对象

每个Axes(ax)对象都是一个拥有自己坐标系统的绘图区域

plt.figure, plt.subplot

'''

# plt.figure() 绘图对象

matplotlib 柱状图_数据分析matplotlib做图_第21张图片

# 子图创建1 - 先建立子图然后填充图表

matplotlib 柱状图_数据分析matplotlib做图_第22张图片

matplotlib 柱状图_数据分析matplotlib做图_第23张图片

# 子图创建2 - 创建一个新的figure,并返回一个subplot对象的numpy数组 → plt.subplot

matplotlib 柱状图_数据分析matplotlib做图_第24张图片

# plt.subplots,参数调整

matplotlib 柱状图_数据分析matplotlib做图_第25张图片

# 子图创建3 - 多系列图,分别绘制

matplotlib 柱状图_数据分析matplotlib做图_第26张图片

'''

6,基本图表绘制 plt.plot()

图表类别:线形图、柱状图、密度图,以横纵坐标两个维度为主

同时可延展出多种其他图表样式

plt.plot(kind='line', ax=None, figsize=None, use_index=True, title=None, grid=None, legend=False, 

style=None, logx=False, logy=False, loglog=False, xticks=None, yticks=None, xlim=None, ylim=None, rot=None, fontsize=None, colormap=None, table=False, yerr=None, xerr=None, label=None, secondary_y=False, **kwds)

# Series.plot():series的index为横坐标,value为纵坐标

# kind → line,bar,barh...(折线图,柱状图,柱状图-横...)

# label → 图例标签,Dataframe格式以列名为label

# style → 风格字符串,这里包括了linestyle(-),marker(.),color(g)

# color → 颜色,有color指定时候,以color颜色为准

# alpha → 透明度,0-1

# use_index → 将索引用为刻度标签,默认为True

# rot → 旋转刻度标签,0-360

# grid → 显示网格,一般直接用plt.grid

# xlim,ylim → x,y轴界限

# xticks,yticks → x,y轴刻度值

# figsize → 图像大小

# title → 图名

# legend → 是否显示图例,一般直接用plt.legend()

'''

# Series直接生成图表

matplotlib 柱状图_数据分析matplotlib做图_第27张图片

# Dataframe直接生成图表

matplotlib 柱状图_数据分析matplotlib做图_第28张图片

'''

7,柱状图、堆叠图

plt.plot(kind='bar/barh') , plt.bar()

'''

# 柱状图与堆叠图

matplotlib 柱状图_数据分析matplotlib做图_第29张图片

matplotlib 柱状图_数据分析matplotlib做图_第30张图片

# 柱状图 plt.bar()

matplotlib 柱状图_数据分析matplotlib做图_第31张图片

# 外嵌图表plt.table()

matplotlib 柱状图_数据分析matplotlib做图_第32张图片

matplotlib 柱状图_数据分析matplotlib做图_第33张图片

'''

8,面积图、填图、饼图

plt.plot.area()

plt.fill(), plt.fill_between()

plt.pie()

'''

# 面积图

0ebc161c325a2b1b876b6a0fd9d7de78.png

matplotlib 柱状图_数据分析matplotlib做图_第34张图片

# 填图

matplotlib 柱状图_数据分析matplotlib做图_第35张图片

matplotlib 柱状图_数据分析matplotlib做图_第36张图片

# 饼图 plt.pie()

matplotlib 柱状图_数据分析matplotlib做图_第37张图片

matplotlib 柱状图_数据分析matplotlib做图_第38张图片

'''

9,直方图

plt.hist(x, bins=10, range=None, normed=False, weights=None, cumulative=False, bottom=None, histtype='bar', align='mid', orientation='vertical',rwidth=None, log=False, color=None, label=None, stacked=False, hold=None, data=None, **kwargs)

'''

# 直方图+密度图

matplotlib 柱状图_数据分析matplotlib做图_第39张图片

# 堆叠直方图

matplotlib 柱状图_数据分析matplotlib做图_第40张图片

56386d3304f95737ff9527f7b39202c0.png

matplotlib 柱状图_数据分析matplotlib做图_第41张图片

'''

10,散点图

plt.scatter(), pd.scatter_matrix()

'''

matplotlib 柱状图_数据分析matplotlib做图_第42张图片

matplotlib 柱状图_数据分析matplotlib做图_第43张图片

'''

11,极坐标图

调用subplot()创建子图时通过设置projection='polar',便可创建一个极坐标子图,然后调用plot()在极坐标子图中绘图

'''

# 创建极坐标轴

matplotlib 柱状图_数据分析matplotlib做图_第44张图片

matplotlib 柱状图_数据分析matplotlib做图_第45张图片

# 极坐标参数设置

matplotlib 柱状图_数据分析matplotlib做图_第46张图片

matplotlib 柱状图_数据分析matplotlib做图_第47张图片

# 雷达图1 - 极坐标的折线图/填图 - plt.plot()

matplotlib 柱状图_数据分析matplotlib做图_第48张图片

matplotlib 柱状图_数据分析matplotlib做图_第49张图片# 雷达图2 - 极坐标的折线图/填图 - plt.polar()

matplotlib 柱状图_数据分析matplotlib做图_第50张图片

matplotlib 柱状图_数据分析matplotlib做图_第51张图片

# 极轴图 - 极坐标的柱状图

matplotlib 柱状图_数据分析matplotlib做图_第52张图片

'''

12,箱型图

箱型图:又称为盒须图、盒式图、盒状图或箱线图,是一种用作显示一组数据分散情况资料的统计图

包含一组数据的:最大值、最小值、中位数、上四分位数(Q3)、下四分位数(Q1)、异常值

① 中位数 → 一组数据平均分成两份,中间的数

② 上四分位数Q1 → 是将序列平均分成四份,计算(n+1)/4与(n-1)/4两种,一般使用(n+1)/4

③ 下四分位数Q3 → 是将序列平均分成四份,计算(1+n)/4*3=6.75

④ 内限 → T形的盒须就是内限,最大值区间Q3+1.5IQR,最小值区间Q1-1.5IQR (IQR=Q3-Q1)

⑤ 外限 → T形的盒须就是内限,最大值区间Q3+3IQR,最小值区间Q1-3IQR (IQR=Q3-Q1)

⑥ 异常值 → 内限之外 - 中度异常,外限之外 - 极度异常

plt.plot.box(),plt.boxplot()

'''

# plt.plot.box()绘制

matplotlib 柱状图_数据分析matplotlib做图_第53张图片

matplotlib 柱状图_数据分析matplotlib做图_第54张图片

# plt.boxplot()绘制

matplotlib 柱状图_数据分析matplotlib做图_第55张图片

matplotlib 柱状图_数据分析matplotlib做图_第56张图片

matplotlib 柱状图_数据分析matplotlib做图_第57张图片

matplotlib 柱状图_数据分析matplotlib做图_第58张图片

matplotlib 柱状图_数据分析matplotlib做图_第59张图片

你可能感兴趣的:(matplotlib,柱状图)