数据分析--Matplotlib(二)

简介: 数据分析--Matplotlib

柱状图


柱状图可以直观的反应不同类别数据之间分布情况的数量差异


import matplotlib.pyplot as plt
import numpy as np
fig,axes = plt.subplots()
data_m=(40,120,20,100,30,200)
data_f=(60,180,30,150,20,50)
index = np.arange(6)
width = 0.4
axes.bar(index,data_m,width,color='c',label='men')
axes.bar(index+width,data_f,width,color='b',label='women')
axes.set_xticks(index+width/2)
axes.set_xticklabels(('Taxi','Metro','Walk','Bus','Bicycle','Driving'))
axes.legend()
plt.show()

e1507e1c33ab4991a9d6c3655673fdca.png

# 柱状图叠加效果,将两个柱状图叠加显示
fig,axes = plt.subplots()
data_m=(40,120,20,100,30,200)
data_f=(60,180,30,150,20,50)
width = 0.4
axes.bar(index,data_m,width,color='c',label='men')
axes.bar(index,data_f,width,color='b',bottom=data_m,label='women')
axes.set_xticks(index+width/2)
axes.set_xticks(index+width/2)
axes.set_xticklabels(('Taxi','Metro','Walk','Bus','Bicycle','Driving'))
axes.legend()
plt.show()

1e1d1d09dfa14a5c95314517075af939.png

# 柱状图半重叠
fig,axes = plt.subplots()
data_m=(40,120,20,100,30,200)
data_f=(60,180,30,150,20,50)
width = 0.4
axes.bar(index,data_m,width,color='c',label='men',align='center')
axes.bar(index,data_f,width,color='b',label='women',align='edge')
axes.set_xticks(index+width/2)
axes.set_xticks(index+width/2)
axes.set_xticklabels(('Taxi','Metro','Walk','Bus','Bicycle','Driving'))
axes.legend()
plt.show()

bc3087e91b824bb3833bb613b031ffa1.png

# 水平柱状图
fig,axes = plt.subplots()
data_m=(40,120,20,100,30,200)
data_f=(60,180,30,150,20,50)
width = 0.4
axes.barh(index,data_m,width,color='c',label='men',align='center',alpha=0.4)
axes.barh(index,data_f,width,color='b',label='women',align='edge',alpha=0.4)
axes.set_yticks(index+width/2)
axes.set_yticklabels(('Taxi','Metro','Walk','Bus','Bicycle','Driving'))
axes.legend()
plt.show()

26ee1dda43e949ed8ee3e006962ac660.png

折线图


折线图可以看出数据的变化趋势


import matplotlib.pyplot as plt
import numpy as np
fig,axes = plt.subplots()
x = np.arange(10)
y1 = np.random.rand(10)
y2 = np.random.rand(10)
axes.plot(x,y1,'-o',color='c')
axes.plot(x,y2,'--o',color='b')
plt.show()

4bc2706e7ae142ac88b17f3b0545220a.png

表格


通过表和图的结合,既可以直观的看到数据的分布情况,也能看到详细的数据


import matplotlib.pyplot as plt
import numpy as np
fig,axes = plt.subplots()
data_m=(40,120,20,100,30,200)
data_f=(60,180,30,150,20,50)
width = 0.4
index = np.arange(6)
axes.bar(index,data_m,width,color='c',label='men')
axes.bar(index,data_f,width,color='b',bottom=data_m,label='women')
axes.set_xticks([])
axes.legend()
# 表格
data=(data_m,data_f)
rows =('male','female')
columns = 'Taxi','Metro','Walk','Bus','Bicycle','Driving'
axes.table(cellText=data,rowLabels=rows,colLabels=columns)
plt.show()

64f3cc6eae754fe2a1666ce5db6d67ad.png


不同坐标系下的图象

import matplotlib.pyplot as plt
import numpy as np
# 双扭线
fig,axes = plt.subplots()
theta_list = np.arange(0,2*np.pi,0.01)
r = [2*np.cos(2*theta) for theta in theta_list]
# polar 极坐标系
# 建立一个投影为极坐标的axes
axes = plt.subplot(projection='polar')
# 使用plot函数生成函数曲线,
axes.plot(theta_list,r)
# 为了美观删除r轴上所有的刻度
axes.set_rticks([])
plt.show()

1cad08c6cade47c1b42b84f98e66cca8.png

matplotlib3D

import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D
fig = plt.figure()
axes = Axes3D(fig)
# 设置随机种子
np.random.seed(100)
x = np.random.rand(60)
y = np.random.rand(60)
z = np.random.rand(60)
axes.scatter(x,y,x)
plt.show()

53432e6fc0574a01b4be065e5ac4245e.png

# 使用pyplot实现
fig = plt.figure()
axes = plt.subplot(projection="3d")
x = np.random.rand(80)
y = np.random.rand(80)
z = np.random.rand(80)
axes.scatter(x,y,x)
plt.show()
相关文章
|
30天前
|
数据采集 数据可视化 数据挖掘
数据分析大神养成记:Python+Pandas+Matplotlib助你飞跃!
在数字化时代,数据分析至关重要,而Python凭借其强大的数据处理能力和丰富的库支持,已成为该领域的首选工具。Python作为基石,提供简洁语法和全面功能,适用于从数据预处理到高级分析的各种任务。Pandas库则像是神兵利器,其DataFrame结构让表格型数据的处理变得简单高效,支持数据的增删改查及复杂变换。配合Matplotlib这一数据可视化的魔法棒,能以直观图表展现数据分析结果。掌握这三大神器,你也能成为数据分析领域的高手!
42 2
|
10天前
|
数据采集 数据可视化 数据挖掘
数据分析大神养成记:Python+Pandas+Matplotlib助你飞跃!
【9月更文挑战第2天】数据分析大神养成记:Python+Pandas+Matplotlib助你飞跃!
38 5
|
30天前
|
数据可视化 数据挖掘 API
Python数据分析:数据可视化(Matplotlib、Seaborn)
数据可视化是数据分析中不可或缺的一部分,通过将数据以图形的方式展示出来,可以更直观地理解数据的分布和趋势。在Python中,Matplotlib和Seaborn是两个非常流行和强大的数据可视化库。本文将详细介绍这两个库的使用方法,并附上一个综合详细的例子。
|
21天前
|
数据可视化 数据挖掘 Python
数据可视化不再难!Matplotlib带你轻松绘制精美图表,让数据分析焕发光彩!
【8月更文挑战第22天】今天分享如何用Python的Matplotlib库绘制多样图表。Matplotlib是数据可视化的强大工具,对数据分析至关重要。本文分六部分:首先介绍环境准备,包括安装和配置;随后通过四个案例演示折线图、柱状图、饼图及散点图的绘制方法;最后总结并鼓励大家进一步探索Matplotlib的丰富功能。跟着示例操作,你将学会基本图表的制作,提升数据展示技能。
21 0
|
2月前
|
数据可视化 数据挖掘 Python
数据界的颜值担当!Python数据分析遇上Matplotlib、Seaborn,可视化美出新高度!
【7月更文挑战第24天】在数据科学领域,Python的Matplotlib与Seaborn将数据可视化升华为艺术,提升报告魅力。Matplotlib作为基石,灵活性强,新手友好;代码示例展示正弦波图的绘制与美化技巧。Seaborn针对统计图表,提供直观且美观的图形,如小提琴图,增强数据表达力。两者结合,创造视觉盛宴,如分析电商平台销售数据时,Matplotlib描绘趋势,Seaborn揭示类别差异,共塑洞察力强的作品,使数据可视化成为触动人心的艺术。
46 7
|
2月前
|
数据可视化 数据挖掘 Python
惊呆了!Python数据分析师如何用Matplotlib、Seaborn秒变数据可视化大师?
【7月更文挑战第24天】在数据驱动时代,分析师穿梭数字海洋揭示故事,数据可视化如魔法棒般将复杂数据转化成直观图形。Matplotlib与Seaborn成为黄金搭档:前者作为基础绘图库提供高度定制化选项;后者在其上构建,简化复杂图表绘制并增强美观度。两者结合,助力分析师高效完成任务。
26 6
|
2月前
|
存储 数据可视化 数据挖掘
|
2月前
|
数据可视化 数据挖掘 数据处理
深度挖掘!Python 数据分析中 Matplotlib 与 Seaborn 的隐藏功能,让数据可视化更出彩!
【7月更文挑战第23天】在Python数据分析中,Matplotlib与Seaborn是关键的可视化工具。Matplotlib提供深度自定义,如调整轴刻度和网格,支持多子图布局。Seaborn基于Matplotlib,简化美观图表生成,内置主题与调色板,适用于复杂统计图形如小提琴图和成对关系图,且无缝集成Pandas数据框。掌握这些库的高级功能,能显著提升数据可视化效果,助力数据分析决策。
30 4
|
2月前
|
数据可视化 数据挖掘 Python
|
2月前
|
数据可视化 数据挖掘 Linux
震撼发布!Python数据分析师必学,Matplotlib与Seaborn数据可视化实战全攻略!
【7月更文挑战第22天】数据科学中,Matplotlib和Seaborn是Python的可视化主力。Matplotlib用于基础图表,如示例中的折线图;Seaborn则强化统计图形,如分布图。两者结合能创建复杂的可视化,如显示趋势与分布的同一图表。通过学习和运用这些工具,数据分析师能提升效率,更好地讲述数据故事。
39 2