Quantcast
Channel: 小蓝博客
Viewing all articles
Browse latest Browse all 3155

以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。

$
0
0

常用图表类型及其Python代码示例

在数据分析和可视化过程中,使用合适的图表能够更直观地展示数据特征。Matplotlib和Seaborn是Python中最常用的两个绘图库,提供了丰富的图表类型。本文将介绍一些常用的图表类型,并给出相应的Python代码示例。

一、折线图(Line Plot)

折线图用于显示数据在连续时间段或连续值上的变化趋势。

代码示例

import matplotlib.pyplot as plt
import numpy as np

# 数据
x = np.linspace(0, 10, 100)
y = np.sin(x)

# 绘制折线图
plt.plot(x, y)
plt.title("Line Plot")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.show()

二、柱状图(Bar Plot)

柱状图用于显示不同类别的数据比较。

代码示例

import matplotlib.pyplot as plt

# 数据
categories = ['A', 'B', 'C', 'D']
values = [10, 24, 36, 18]

# 绘制柱状图
plt.bar(categories, values)
plt.title("Bar Plot")
plt.xlabel("Categories")
plt.ylabel("Values")
plt.show()

三、散点图(Scatter Plot)

散点图用于显示两个变量之间的关系。

代码示例

import matplotlib.pyplot as plt

# 数据
x = np.random.rand(50)
y = np.random.rand(50)

# 绘制散点图
plt.scatter(x, y)
plt.title("Scatter Plot")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.show()

四、直方图(Histogram)

直方图用于显示数据的分布情况。

代码示例

import matplotlib.pyplot as plt

# 数据
data = np.random.randn(1000)

# 绘制直方图
plt.hist(data, bins=30)
plt.title("Histogram")
plt.xlabel("Value")
plt.ylabel("Frequency")
plt.show()

五、箱线图(Box Plot)

箱线图用于显示数据的分布特征及异常值。

代码示例

import matplotlib.pyplot as plt

# 数据
data = [np.random.normal(0, std, 100) for std in range(1, 4)]

# 绘制箱线图
plt.boxplot(data, vert=True, patch_artist=True)
plt.title("Box Plot")
plt.xlabel("Categories")
plt.ylabel("Values")
plt.show()

六、热力图(Heatmap)

热力图用于显示矩阵数据的强度或分布。

代码示例

import seaborn as sns
import numpy as np

# 数据
data = np.random.rand(10, 12)

# 绘制热力图
sns.heatmap(data, annot=True, cmap='coolwarm')
plt.title("Heatmap")
plt.show()

七、成对关系图(Pair Plot)

成对关系图用于显示数据集中多个变量之间的关系。

代码示例

import seaborn as sns
import pandas as pd

# 数据
data = sns.load_dataset("iris")

# 绘制成对关系图
sns.pairplot(data, hue="species")
plt.title("Pair Plot")
plt.show()

八、饼图(Pie Chart)

饼图用于显示各部分在整体中的比例。

代码示例

import matplotlib.pyplot as plt

# 数据
labels = 'A', 'B', 'C', 'D'
sizes = [15, 30, 45, 10]
explode = (0, 0.1, 0, 0)  # 突出显示第二部分

# 绘制饼图
plt.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%', shadow=True, startangle=140)
plt.title("Pie Chart")
plt.show()

九、面积图(Area Plot)

面积图用于显示各部分在整体中随时间变化的累积情况。

代码示例

import matplotlib.pyplot as plt
import numpy as np

# 数据
x = np.arange(1, 11)
y1 = np.random.rand(10)
y2 = np.random.rand(10)

# 绘制面积图
plt.fill_between(x, y1, label='Y1')
plt.fill_between(x, y2, label='Y2', alpha=0.5)
plt.title("Area Plot")
plt.xlabel("X-axis")
plt.ylabel("Y-axis")
plt.legend()
plt.show()

十、雷达图(Radar Chart)

雷达图用于显示多变量数据在多个维度上的表现。

代码示例

import matplotlib.pyplot as plt
import numpy as np

# 数据
labels = np.array(['A', 'B', 'C', 'D', 'E'])
stats = np.array([20, 34, 30, 35, 27])

# 绘制雷达图
angles = np.linspace(0, 2 * np.pi, len(labels), endpoint=False).tolist()
stats = np.concatenate((stats,[stats[0]]))
angles += angles[:1]

fig, ax = plt.subplots(figsize=(6, 6), subplot_kw=dict(polar=True))
ax.fill(angles, stats, color='blue', alpha=0.25)
ax.plot(angles, stats, color='blue', linewidth=2)
ax.set_yticklabels([])
ax.set_xticks(angles[:-1])
ax.set_xticklabels(labels)
plt.title("Radar Chart")
plt.show()

总结

本文介绍了使用Matplotlib和Seaborn库绘制的常用图表类型,包括折线图、柱状图、散点图、直方图、箱线图、热力图、成对关系图、饼图、面积图和雷达图。这些图表能够帮助我们更直观地展示和分析数据。在实际应用中,选择合适的图表类型至关重要,以确保数据的有效传达。

分析说明表

图表类型用途代码示例
折线图显示数据在连续时间段或连续值上的变化趋势plt.plot(x, y)
柱状图显示不同类别的数据比较plt.bar(categories, values)
散点图显示两个变量之间的关系plt.scatter(x, y)
直方图显示数据的分布情况plt.hist(data, bins=30)
箱线图显示数据的分布特征及异常值plt.boxplot(data, vert=True, patch_artist=True)
热力图显示矩阵数据的强度或分布sns.heatmap(data, annot=True, cmap='coolwarm')
成对关系图显示数据集中多个变量之间的关系sns.pairplot(data, hue="species")
饼图显示各部分在整体中的比例plt.pie(sizes, explode=explode, labels=labels)
面积图显示各部分在整体中随时间变化的累积情况plt.fill_between(x, y1)
雷达图显示多变量数据在多个维度上的表现ax.fill(angles, stats, color='blue', alpha=0.25)

通过这些思维导图和分析说明表,您可以更直观地理解和选择适合的数据可视化图表类型,帮助更有效地展示和分析数据。


Viewing all articles
Browse latest Browse all 3155

Latest Images

Trending Articles