010.python科学计算库seaborn(下)

category

import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
tips.head()
print(tips)
# stripplot:画一个散点图,其中一个变量是类别的
sns.stripplot(x="day", y="total_bill", data=tips)
plt.show()



import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
tips.head()
print(tips)
# stripplot:画一个散点图,其中一个变量是类别的
# 重叠是很常见的现象,但是重叠影响我观察数据的量了
# jitter:抖动
sns.stripplot(x="day", y="total_bill", data=tips, jitter=True)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
tips.head()
print(tips)
# 画一个无重叠点的分类散点图
sns.swarmplot(x="day", y="total_bill", data=tips)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
tips.head()
print(tips)
# 画一个无重叠点的分类散点图
sns.swarmplot(x="day", y="total_bill", hue="sex", data=tips)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
tips.head()
print(tips)
# 画一个无重叠点的分类散点图
sns.swarmplot(x="day", y="total_bill", hue="time", data=tips)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
tips.head()
print(tips)
# 盒图
# IQR即统计学概念四分位距,第一/四分位与第三/四分位之间的距离
# N = 1.5IQR 如果一个值>Q3+N或 < Q1-N,则为离群点
sns.boxplot(x="day", y="total_bill", hue="time", data=tips)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
# 结合箱线图和核密度估算
sns.violinplot(x="total_bill", y="day", hue="time", data=tips)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
# 结合箱线图和核密度估算
sns.violinplot(x="total_bill", y="day", hue="sex", data=tips, split=True)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
# 结合箱线图和核密度估算
sns.violinplot(x="total_bill", y="day", data=tips, inner=None)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
print(tips)
# color:颜色  alpha:透明度
sns.swarmplot(x="day", y="total_bill", data=tips, color="red", alpha=.3)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

titanic = sns.load_dataset("titanic")
print(titanic)
# 显示值的集中趋势可以用条形图
sns.barplot(x="sex", y="survived", hue="class", data=titanic)
plt.show()



import matplotlib.pyplot as plt
import seaborn as sns

titanic = sns.load_dataset("titanic")
# 点图可以更好的描述变化差异
sns.pointplot(x="sex", y="survived", hue="class", data=titanic)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

titanic = sns.load_dataset("titanic")
# 点图可以更好的描述变化差异
sns.pointplot(x="class", y="survived", hue="sex", data=titanic,
              palette={"male": "g", "female": "m"},
              markers=["^", "o"], linestyles=["-", "--"])
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

iris = sns.load_dataset("iris")
# 宽形数据
sns.boxplot(data=iris, orient="h")
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
# 多层面板分类图
sns.factorplot(x="day", y="total_bill", hue="smoker", data=tips)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
# 多层面板分类图
sns.factorplot(x="day", y="total_bill", hue="smoker", data=tips, kind="bar")
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
# 多层面板分类图
sns.factorplot(x="day", y="total_bill", hue="smoker", data=tips,col="time", kind="swarm")
plt.show()


FacetGrid

import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
# FacetGrid:用于绘制条件关系的多图网格
g = sns.FacetGrid(tips, col="time")     
# map:对每个方面的数据子集应用一个绘图函数
g.map(plt.hist, "tip")
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
# FacetGrid:用于绘制条件关系的多图网格
g = sns.FacetGrid(tips, col="sex", hue="smoker")
# map:对每个方面的数据子集应用一个绘图函数
g.map(plt.scatter, "total_bill", "tip", alpha=.7)
# add_legend:画一个图例,可能把它放在坐标轴外面,调整图形的大小
g.add_legend()
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
# FacetGrid:用于绘制条件关系的多图网格
g = sns.FacetGrid(tips, row="smoker", col="time", margin_titles=True) 
# map:对每个方面的数据子集应用一个绘图函数
# regplot:图数据与线性回归模型拟合
# fit_reg:是否添加线性拟合
g.map(sns.regplot, "size", "total_bill", color="green", fit_reg=False, x_jitter=.1)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
# FacetGrid:用于绘制条件关系的多图网格
g = sns.FacetGrid(tips, col="day", size=4, aspect=.5)
# map:对每个方面的数据子集应用一个绘图函数
# barplot:以矩形条显示点估计和置信区间
g.map(sns.barplot, "sex", "total_bill")
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns
from pandas import Categorical 

tips = sns.load_dataset("tips")    
ordered_days = tips.day.value_counts().index     
print (ordered_days)     
ordered_days = Categorical(['Thur', 'Fri', 'Sat', 'Sun'])
# FacetGrid:用于绘制条件关系的多图网格
g = sns.FacetGrid(tips, row="day", row_order=ordered_days,     
               size=1.5, aspect=5,)
# map:对每个方面的数据子集应用一个绘图函数
# boxplot:绘制一个框图来显示与类别相关的分布
g.map(sns.boxplot, "total_bill")
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
pal = dict(Lunch="seagreen", Dinner="gray")
# FacetGrid:用于绘制条件关系的多图网格
# palette:调色板
g = sns.FacetGrid(tips, hue="time", palette=pal, size=5)
# map:对每个方面的数据子集应用一个绘图函数
# scatter:散射
g.map(plt.scatter, "total_bill", "tip", s=50, alpha=.7, linewidth=.5, edgecolor="white")
g.add_legend()
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
# FacetGrid:用于绘制条件关系的多图网格
# palette:调色板
g = sns.FacetGrid(tips, hue="sex", palette="Set1", size=5, hue_kws={"marker": ["^", "v"]})
# map:对每个方面的数据子集应用一个绘图函数
# scatter:散射
g.map(plt.scatter, "total_bill", "tip", s=100, linewidth=.5, edgecolor="white")
g.add_legend()
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
with sns.axes_style("white"):
    g = sns.FacetGrid(tips, row="sex", col="smoker", margin_titles=True, size=2.5)
g.map(plt.scatter, "total_bill", "tip", color="#334488", edgecolor="white", lw=.5)
g.set_axis_labels("Total bill (US Dollars)", "Tip");
g.set(xticks=[10, 30, 50], yticks=[2, 6, 10]);
g.fig.subplots_adjust(wspace=.02, hspace=.02)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

iris = sns.load_dataset("iris")
g = sns.PairGrid(iris)
g.map(plt.scatter)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

iris = sns.load_dataset("iris")
g = sns.PairGrid(iris)
g.map_diag(plt.hist)
g.map_offdiag(plt.scatter)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

iris = sns.load_dataset("iris")
print(iris)
g = sns.PairGrid(iris, hue="species")
g.map_diag(plt.hist)
g.map_offdiag(plt.scatter)
g.add_legend()
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

iris = sns.load_dataset("iris")
g = sns.PairGrid(iris, vars=["sepal_length", "sepal_width"], hue="species") 
g.map(plt.scatter)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

tips = sns.load_dataset("tips")
g = sns.PairGrid(tips, hue="size", palette="GnBu_d")
g.map(plt.scatter, s=50, edgecolor="white")
g.add_legend()
plt.show()


Heatmap

import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np

uniform_data = np.random.rand(3, 3)
print(uniform_data)
# heatmap:将矩形数据绘制成彩色编码矩阵
heatmap = sns.heatmap(uniform_data)
plt.show()



import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np

uniform_data = np.random.rand(3, 3)
# heatmap:将矩形数据绘制成彩色编码矩阵
# 小于vmin的显示为vmin;大于max的显示为vmax
heatmap = sns.heatmap(uniform_data, vmin=0.2, vmax=0.5)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns
import numpy as np

uniform_data = np.random.rand(3, 3)
# heatmap:将矩形数据绘制成彩色编码矩阵
heatmap = sns.heatmap(uniform_data, center=0)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

flights = sns.load_dataset("flights")
flights = flights.pivot("month", "year", "passengers")
# heatmap:将矩形数据绘制成彩色编码矩阵
ax = sns.heatmap(flights)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

flights = sns.load_dataset("flights")
flights = flights.pivot("month", "year", "passengers")
# heatmap:将矩形数据绘制成彩色编码矩阵
# linewidths:每个元素之间的距离
ax = sns.heatmap(flights, linewidths=1)
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

flights = sns.load_dataset("flights")
flights = flights.pivot("month", "year", "passengers")
# heatmap:将矩形数据绘制成彩色编码矩阵
# cmap:matplotlib colormap名称或对象,或颜色列表,可选
ax = sns.heatmap(flights, cmap="YlGnBu")
plt.show()


import matplotlib.pyplot as plt
import seaborn as sns

flights = sns.load_dataset("flights")
flights = flights.pivot("month", "year", "passengers")
# heatmap:将矩形数据绘制成彩色编码矩阵
# cbar:是否绘制一个颜色条
ax = sns.heatmap(flights, cbar=False)
plt.show()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值