Matplotlib - 样式



什么是 Matplotlib 中的样式?

在 Matplotlib 库中,样式是允许我们轻松更改绘图视觉外观的配置。它们充当预定义的美学选择集,通过更改颜色、线条样式、字体、网格线等方面来实现。这些样式有助于快速自定义绘图的外观和感觉,而无需每次都手动调整各个元素。

我们可以尝试不同的样式,以找到最适合我们的数据或视觉偏好的样式。样式提供了一种快速有效的方法来增强 Matplotlib 库中绘图的视觉呈现。

内置样式

Matplotlib 带有多种内置样式,它们提供不同的配色方案、线条样式、字体大小和其他视觉属性。

例如:ggplot、seaborn、classic、dark_background 等。

更改样式

使用 plt.style.use('style_name') 将特定样式应用于我们的绘图。

Matplotlib 样式的关键方面

  • 预定义样式 - Matplotlib 库带有各种内置样式,为我们的绘图提供不同的美学效果。

  • 易用性 - 通过应用样式,我们可以立即更改绘图的整体外观,以匹配不同的主题或视觉偏好。

  • 一致性 - 样式确保在同一样式设置下的多个绘图或图形之间的一致性。

使用样式

在 matlplotlib 库中使用可用样式涉及几个步骤。让我们一一看看它们。

设置样式

为了设置所需的样式,我们必须使用 plt.style.use('style_name') 在创建绘图之前设置特定的样式。

例如,如果我们想要设置 ggplot 样式,我们必须使用以下代码。

import matplotlib.pyplot as plt
plt.style.use('ggplot')  # Setting the 'ggplot' style

可用样式

我们可以使用 plt.style.available 查看可用样式的列表。

示例

import matplotlib.pyplot as plt
print(plt.style.available)  # Prints available styles

输出

['Solarize_Light2', '_classic_test_patch', '_mpl-gallery', '_mpl-gallery-nogrid', 'bmh', 'classic', 'dark_background', 'fast', 'fivethirtyeight', 'ggplot', 'grayscale', 'seaborn', 'seaborn-bright', 'seaborn-colorblind', 'seaborn-dark', 'seaborn-dark-palette', 'seaborn-darkgrid', 'seaborn-deep', 'seaborn-muted', 'seaborn-notebook', 'seaborn-paper', 'seaborn-pastel', 'seaborn-poster', 'seaborn-talk', 'seaborn-ticks', 'seaborn-white', 'seaborn-whitegrid', 'tableau-colorblind10']

应用自定义样式

我们可以创建包含特定配置的自定义样式文件,然后使用 plt.style.use('path_to_custom_style_file') 应用它们。

应用 seaborn-darkgrid 样式

在此示例中,样式 'seaborn-darkgrid' 应用于绘图,从而改变其外观。

示例

import matplotlib.pyplot as plt
# Using a specific style
plt.style.use('seaborn-darkgrid')

# Creating a sample plot
plt.plot([1, 2, 3, 4], [10, 15, 25, 30])
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
plt.title('Sample Plot')
plt.show()
输出
Dark Grid

应用 ggplot 样式

在此示例中,我们对绘图使用 ggplot 样式。

示例

import matplotlib.pyplot as plt
# Using a specific style
plt.style.use('seaborn-white')

# Creating a sample plot
plt.plot([1, 2, 3, 4], [10, 15, 25, 30])
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
plt.title('Sample Plot')
plt.show()
输出
White Grid
广告