logo

数据可视化库 Matplotlib 入门 3——柱状图

作者:问题终结者2024.01.17 21:48浏览量:10

简介:本文将介绍如何使用 Matplotlib 库创建柱状图,并通过实例展示如何定制化柱状图的样式和布局。

数据可视化中,柱状图是一种常用的图表类型,用于展示分类数据之间的比较关系。Matplotlib 是一个 Python 数据可视化库,提供了丰富的绘图功能,包括创建柱状图。
在 Matplotlib 中,可以使用 bar() 函数创建柱状图。下面是一个简单的示例代码,演示如何使用 Matplotlib 创建柱状图:

  1. import matplotlib.pyplot as plt
  2. # 数据
  3. categories = ['Category1', 'Category2', 'Category3', 'Category4']
  4. values = [10, 15, 7, 10]
  5. # 创建柱状图
  6. plt.bar(categories, values)
  7. # 设置标题和标签
  8. plt.title('柱状图示例')
  9. plt.xlabel('分类')
  10. plt.ylabel('值')
  11. # 显示图表
  12. plt.show()

在上面的代码中,我们首先导入了 matplotlib.pyplot 模块,并定义了分类名称和对应的值。然后,使用 plt.bar() 函数创建柱状图,该函数接受两个参数:分类名称和对应的值。接下来,使用 plt.title(), plt.xlabel(), 和 plt.ylabel() 函数设置图表的标题和坐标轴标签。最后,使用 plt.show() 函数显示图表。
除了基本的柱状图,还可以通过定制化参数来美化图表。下面是一些常用的定制化选项:

  • color:设置柱子的颜色。可以传入单一颜色字符串或颜色序列,例如 ['red', 'green', 'blue']
  • edgecolor:设置柱子边缘的颜色。
  • linewidth:设置柱子边缘的线宽。
  • tick_label:设置坐标轴刻度标签的显示内容。可以传入类别名称或数字标签。
  • align:设置柱子与坐标轴刻度的对齐方式,可选值为 ‘center’ 或 ‘edge’。
  • width:设置柱子的宽度。可以传入一个浮点数或一个包含浮点数的序列。
  • orientation:设置柱状图的布局方向,可选值为 ‘horizontal’ 或 ‘vertical’。如果设置为 ‘horizontal’,则横坐标表示分类,纵坐标表示值;如果设置为 ‘vertical’,则纵坐标表示分类,横坐标表示值。
    下面是一个示例代码,演示如何定制化柱状图的样式和布局:
    ```python
    import matplotlib.pyplot as plt
    import numpy as np

    数据

    categories = [‘Category1’, ‘Category2’, ‘Category3’, ‘Category4’]
    values = [10, 15, 7, 10]
    colors = [‘red’, ‘green’, ‘blue’, ‘yellow’]
    width = 0.35 # 设置柱子宽度为0.35个单位

    创建柱状图

    plt.bar(categories, values, color=colors, width=width, edgecolor=’black’, linewidth=1.5)

    设置标题和标签

    plt.title(‘定制化柱状图示例’)
    plt.xlabel(‘分类’)
    plt.ylabel(‘值’)
    plt.xticks(np.arange(len(categories)) + width / 2, categories) # 设置刻度位置和标签显示内容
    plt.yticks([0, 10, 20]) # 设置刻度值范围和间隔
    plt.tick_labelsize = 14 # 设置刻度标签字体大小为14号字体
    plt.tick_fontproperties = ‘italic’ # 设置刻度标签字体为斜体字
    plt.bar_labelsize = 12 # 设置柱子标签字体大小为12号字体
    plt.bar_fontproperties = ‘normal’ # 设置柱子标签字体为正常字体(非斜体)
    plt.align_labels = True # 设置柱子标签与柱子对齐方式为居中对齐
    plt.align_xticks = True # 设置刻度与轴线对齐方式为居中对齐(仅当刻度标签不显示时才有效)
    plt.align_yticks = False # 设置刻度与轴线对齐方式为居中对齐(仅当刻度标签不显示时才有效)
    plt.legend([‘Category1’, ‘Category2’, ‘Category3’, ‘Category

相关文章推荐

发表评论