标签:plt Seaborn Python seaborn violinplot sns import Distribution data
分布(Distribution)
1 小提琴图(Violin Plot)
# 加载数据
import seaborn as sns
data = sns.load_dataset('iris')
# 绘制小提琴图
sns.violinplot(x=data["species"], y=data["sepal_length"])
OUTPUT:
1.1 一维变量
import seaborn as sns
import matplotlib.pyplot as plt
data = sns.load_dataset('iris')
sns.violinplot(y=data["sepal_length"])
plt.show()
OUTPUT:
1.2 多组数据
import seaborn as sns
import matplotlib.pyplot as plt
da = sns.load_dataset('iris')
sns.violinplot(data=da.iloc[:,0:2])
plt.show()
OUTPUT:
1.3 横向提琴图
import seaborn as sns
import matplotlib.pyplot as plt
data = sns.load_dataset('iris')
# 转换x与y轴
sns.violinplot(y=data["species"], x=data["sepal_length"])
plt.show()
OUTPUT:
1.4 设置背景和改变图形尺寸
import seaborn as sns
import matplotlib.pyplot as plt
# 设置背景
sns.set(style="darkgrid")
data = sns.load_dataset('iris')
# 改变线条宽度
sns.violinplot(x=data["species"], y=data["sepal_length"], linewidth=4)
plt.show()
OUTPUT:
import seaborn as sns
import matplotlib.pyplot as plt
# 设置背景
sns.set(style="darkgrid")
data = sns.load_dataset('iris')
# 改变图形宽度
sns.violinplot(x=data["species"], y=data["sepal_length"], width=0.5)
plt.show()
1.5 改变颜色
import seaborn as sns
import matplotlib.pyplot as plt
data = sns.load_dataset('iris')
# 调色盘设置颜色
sns.violinplot(x=data["species"], y=data["sepal_length"], palette="Blues")
plt.show()
OUTPUT:
import seaborn as sns
import matplotlib.pyplot as plt
data = sns.load_dataset('iris')
# 统一颜色
sns.violinplot(x=data["species"], y=data["sepal_length"], color="teal")
plt.show()
import seaborn as sns
import matplotlib.pyplot as plt
data = sns.load_dataset('iris')
# 个性化设置调色盘
my_palette = {"versicolor": "teal", "setosa": "skyblue", "virginica": "purple"}
# 个性化设置颜色
sns.violinplot(x=data["species"], y=data["sepal_length"], palette=my_palette)
plt.show()
1.6 命名
import seaborn as sns
import matplotlib.pyplot as plt
df = sns.load_dataset('iris')
# 命名
sns.violinplot(x='species', y='sepal_length', data=df, order=[ "versicolor", "virginica", "setosa"])
plt.show()
OUTPUT:
1.7 添加数据标签
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
df = sns.load_dataset('iris')
# 绘制小提琴图
vp = sns.violinplot(x="species", y="sepal_length", data=df)
# 计算数值
medians = df.groupby(['species'])['sepal_length'].median().values
num = df['species'].value_counts().values
num = [str(x) for x in num.tolist()]
num = ["n: " + i for i in num]
# 添加数据标签
txt = range(len(num))
for tick, label in zip(txt, vp.get_xticklabels()):
vp.text(txt[tick], medians[tick] + 0.03, num[tick],
horizontalalignment='center',
size='large',
color='white',
weight='semibold')
plt.show()
OUTPUT:
1.8 分组小提琴图
import seaborn as sns
import matplotlib.pyplot as plt
df = sns.load_dataset('tips')
# 分组
sns.violinplot(x="day", y="total_bill", hue="smoker", data=df, palette="Blues")
plt.show()
OUTPUT:
标签:plt,Seaborn,Python,seaborn,violinplot,sns,import,Distribution,data 来源: https://blog.csdn.net/Luminoll/article/details/122505057
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。