更多精彩内容,欢迎关注:

视频号
视频号

抖音
抖音

快手
快手

微博
微博

python绘图中四个绘图技巧

导读在可视化数据时,通常需要在单个图形中绘制多个图形。?例如,如果您想从不同的角度可视化相同的变量如:数字变量的并排直方图和箱线图,则多个图形很有用。?在这篇文章中,分享了绘制多个图形的4个简单但实用的技巧。

技巧1: plt.subplots()

技巧2: plt.subplot()

技巧3: plt.tight_layout()

技巧4: plt.suptitle()

数据集:

让我们导入包并更新图表的默认设置,为图表添加一点个人风格。 我们将在提示上使用 Seaborn 的内置数据集:

import seaborn as sns # v0.11.2  
import matplotlib.pyplot as plt # v3.4.2  
sns.set(style='darkgrid', context='talk', palette='rainbow')df = sns.load\_dataset('tips')  
df.head()

技巧1: plt.subplots()

绘制多个子图的一种简单方法是使用 plt.subplots() 。

这是绘制 2 个并排子图的示例语法:

fig, ax = plt.subplots(nrows=1, ncols=2, figsize=(10,4))  
sns.histplot(data=df, x='tip', ax=ax[0])  
sns.boxplot(data=df, x='tip', ax=ax[1]);

在这里,我们在一个图中绘制了两个子图。 我们可以进一步自定义每个子图。

 例如,我们可以像这样为每个子图添加标题:

fig, ax = plt.subplots(1, 2, figsize=(10,4))  
sns.histplot(data=df, x='tip', ax=ax[0])  
ax[0].set\_title("Histogram")  
sns.boxplot(data=df, x='tip', ax=ax[1])  
ax[1].set\_title("Boxplot");

在循环中将所有数值变量用同一组图表示:

numerical = df.select\_dtypes('number').columnsfor col in numerical:  
 fig, ax = plt.subplots(1, 2, figsize=(10,4))  
 sns.histplot(data=df, x=col, ax=ax[0])  
 sns.boxplot(data=df, x=col, ax=ax[1]);
技巧2: plt.subplot()

另一种可视化多个图形的方法是使用 plt.subplot(),末尾没有 s

 语法与之前略有不同:

plt.figure(figsize=(10,4))  
ax1 = plt.subplot(1,2,1)  
sns.histplot(data=df, x='tip', ax=ax1)  
ax2 = plt.subplot(1,2,2)  
sns.boxplot(data=df, x='tip', ax=ax2);

当我们想为多个图绘制相同类型的图形并在单个图中查看所有图形,该方法特别有用:

plt.figure(figsize=(14,4))  
for i, col in enumerate(numerical):  
 ax = plt.subplot(1, len(numerical), i+1)  
 sns.boxplot(data=df, x=col, ax=ax)

我们同样能定制子图形。例如加个title

plt.figure(figsize=(14,4))  
for i, col in enumerate(numerical):  
 ax = plt.subplot(1, len(numerical), i+1)  
 sns.boxplot(data=df, x=col, ax=ax)   
 ax.set\_title(f"Boxplot of {col}")

通过下面的比较,我们能更好的理解它们的相似处与不同处熟悉这两种方法很有用,因为它们可以在不同情况下派上用场。

技巧3: plt.tight_layout()

在绘制多个图形时,经常会看到一些子图的标签在它们的相邻子图上重叠,

如下所示:

categorical = df.select\_dtypes('category').columnsplt.figure(figsize=(8, 8))  
for i, col in enumerate(categorical):  
 ax = plt.subplot(2, 2, i+1)  
 sns.countplot(data=df, x=col, ax=ax)

顶部两个图表的 x 轴上的变量名称被剪掉,右侧图的 y 轴标签与左侧子图重叠.使用plt.tight_layout很方便

plt.figure(figsize=(8, 8))  
for i, col in enumerate(categorical):  
 ax = plt.subplot(2, 2, i+1)  
 sns.countplot(data=df, x=col, ax=ax)   
plt.tight\_layout()

专业 看起来更好了。

技巧4: plt.suptitle()

真个图形添加标题:

plt.figure(figsize=(8, 8))  
for i, col in enumerate(categorical):  
 ax = plt.subplot(2, 2, i+1)  
 sns.countplot(data=df, x=col, ax=ax)   
plt.suptitle('Category counts for all categorical variables')  
plt.tight\_layout()

此外,您可以根据自己的喜好自定义各个图。 例如,您仍然可以为每个子图添加标题。

到此这篇关于python绘图 四个绘图技巧的文章就介绍到这了,希望大家以后多多支持好二三四!

为你推荐
资讯专栏
热门视频
相关推荐
夕阳无限好只是近黄昏是哪位诗人写的 docker的好处 docker的好处是什么 西湖诗词名句全诗西湖美景 js中toString方法有几个作用 python绘图中有哪四个绘图技巧 形容女子绝色美貌 那些关于倾国倾城女子的诗句 那些意境绝美 令人倾心美到极致的古诗词 js中toString方法有哪几个作用 js里toString方法3个作用 《部落与弯刀》:有血有肉的大漠世界 惊艳了时光 温柔了岁月 如何用古诗形容一个人的美 如何进入docker 怎样进入docker 描写春分节气的诗句诗词大全 民以食为天,大米长虫了还能吃吗?一文讲清 陶渊明最有名的诗 以中秋为主题的诗 有哪些春游的古诗 直击心灵 一眼就让人惊艳的诗句 那些意境优美的古诗 关于中秋节的美好诗句 描写中秋的唯美古诗词优选 关于爱国情感的诗句 有关爱国情怀的诗词都有哪些 js中toString方法的3个作用 关于风筝的好的歌赋诗词 docker怎么用 docker如何用 docker有自己的防火墙吗 docker有防火墙吗 docker查看日志命令 docker如何查看日志命令 如何查看docker日志 怎样查看docker日志 docker cp怎么用 docker cp如何用 ui和gui的区别 什么是ui 什么是gui ui设计师要懂什么 ui设计师需要掌握什么 ui设计是什么 包括哪些 分为几个方面 ui和视觉设计的区别 ui设计和视觉设计的不同 ui专业是什么专业 ui设计是什么 ui设计全称 什么叫ui设计 需要学什么 删除docker镜像 卸载docker docker原理 docker工具 网络工程师怎么获得 如何考取网络工程师 你知道什么是ui框架吗 ui框架排行 ui学什么的 学习ui需要了解什么
Top