博客
关于我
matplot绘制图形入门
阅读量:802 次
发布时间:2023-02-07

本文共 2294 字,大约阅读时间需要 7 分钟。

一、折线图

折线图是一种经典的数据可视化方法,广泛应用于展示时间序列数据、函数关系或趋势分析。通过折线图,数据分析师能够直观地观察数据的变化趋势和相关性。以下是基于Python的Matplotlib库实现的折线图代码示例:
import numpy as npimport matplotlib.pyplot as pltx = np.linspace(0, 2 * np.pi, 100)y1, y2 = np.sin(x), np.cos(x)plt.plot(x, y1, label='y = sin(x)', c='r', linestyle='dashed', lw=5)plt.plot(x, y2, label='y = cos(x)', c='y', marker=">")plt.legend()plt.title('Line Chart')plt.xlabel('x')plt.ylabel('y')plt.show()

代码解释:

  • 使用np.linspace生成等距的x值范围,总长度为0到2π。
  • 通过np.sin(x)np.cos(x)生成对应的y值,分别绘制两条折线。
  • 调用plt.plot函数设置线型、颜色、标签等参数,第一条折线用红色虚线,第二条折线用黄色圆点标记。
  • 调用plt.legend()显示图例,plt.title()设置图表标题,plt.xlabel()plt.ylabel()设置坐标轴标签。
  • 最后调用plt.show()展示图表。
  • 二、柱状图

    柱状图是一种直观的数据展示方式,适合比较不同类别的数量或比例。以下是基于Matplotlib的柱状图代码示例:
    import matplotlib.pyplot as pltnum_list = [1.5, 0.6, 7.8, 6]plt.bar(range(len(num_list)), num_list, color='rgb', tick_label=['Monday', 'Tuesday', 'Friday', 'Sunday'])plt.title('Bar Chart Example')plt.show()

    代码解释:

  • 定义数值列表num_list,包含四个数据值。
  • 使用plt.bar绘制柱状图,传入x轴标签和颜色参数color='rgb',默认颜色为红、绿、蓝三种。
  • 调用plt.title()设置图表标题,并最终调用plt.show()展示图表。
  • 三、饼图

    饼图是一种圆形的数据可视化图表,适合展示数据的比例或百分比。以下是基于Matplotlib的饼图代码示例:
    import matplotlib.pyplot as pltsizes = [2, 5, 12, 70, 2, 9]plt.pie(sizes, labels=['Entertainment', 'Childcare', 'Food', 'Mortgage', 'Transport', 'Other'], autopct='%1.1f%%', shadow=False, startangle=150)plt.title('Pie Chart Example - August Family Expenditure')plt.show()

    代码解释:

  • 定义一个数据大小列表sizes,对应六个类别的数据值。
  • 调用plt.pie()绘制饼图,传入数据大小、标签、百分比格式、阴影设置和起始角度。
  • 调用plt.title()设置图表标题,并最终调用plt.show()展示图表。
  • 四、词云图

    词云图是一种信息密集型的可视化图表,适合展示文本数据的分布和频率。以下是基于WordCloud库的词云图代码示例:
    import jiebafrom wordcloud import WordCloudimport matplotlib.pyplot as pltpic_mask = np.array(Image.open("ty.jpg"))text = open(r'kebiao.txt', encoding='utf8')text_list = list(text)word_list = [" ".join(jieba.lcut(sentence)) for sentence in text_list]new_text = ' '.join(word_list)wordcloud = WordCloud(font_path='simhei.ttf', background_color="white", max_words=500, max_font_size=150, random_state=40, mask=pic_mask)w = wordcloud.generate(new_text)plt.imshow(w)plt.axis("off")plt.title("Word Cloud Example")plt.show()

    代码解释:

  • 导入必要的库,包括jieba、WordCloud和Matplotlib。
  • 生成词云图的形状模板pic_mask,使用提供的图片。
  • 读取文本文件并进行分词处理,生成词云图的文本内容。
  • 初始化WordCloud对象,设置字体、背景颜色、最大词数、最大字号等参数。
  • 生成词云图并绘制到图表中,关闭坐标轴,设置标题并展示图表。
  • 以上代码示例展示了几种常见的数据可视化图表类型及其实现方法,通过灵活配置参数,可以生成丰富的图表形式,满足不同数据分析需求。

    转载地址:http://bcyfk.baihongyu.com/

    你可能感兴趣的文章
    OpenCV与AI深度学习 | 十分钟掌握Pytorch搭建神经网络的流程
    查看>>
    OpenCV与AI深度学习 | 基于GAN的零缺陷样本产品表面缺陷检测
    查看>>
    OpenCV与AI深度学习 | 基于OpenCV和深度学习预测年龄和性别
    查看>>
    OpenCV与AI深度学习 | 基于OpenCV实现模糊检测 / 自动对焦
    查看>>
    OpenCV与AI深度学习 | 基于Python和OpenCV将图像转为ASCII艺术效果
    查看>>
    OpenCV与AI深度学习 | 基于PyTorch实现Faster RCNN目标检测
    查看>>
    OpenCV与AI深度学习 | 基于PyTorch语义分割实现洪水识别(数据集 + 源码)
    查看>>
    OpenCV与AI深度学习 | 基于YOLO11的车体部件检测与分割
    查看>>
    OpenCV与AI深度学习 | 基于YoloV11自定义数据集实现车辆事故检测(有源码,建议收藏!)
    查看>>
    OpenCV与AI深度学习 | 基于YOLOv8 + BotSORT实现球员和足球检测与跟踪 (步骤 + 源码)
    查看>>
    OpenCV与AI深度学习 | 基于YOLOv8实现高级目标检测和区域计数
    查看>>
    OpenCV与AI深度学习 | 基于YOLOv8的停车对齐检测
    查看>>
    OpenCV与AI深度学习 | 基于YoloV8的药丸/片剂类型识别
    查看>>
    OpenCV与AI深度学习 | 基于YOLO和EasyOCR从视频中识别车牌
    查看>>
    OpenCV与AI深度学习 | 基于图像处理的火焰检测算法(颜色+边缘)
    查看>>
    OpenCV与AI深度学习 | 基于拉普拉斯金字塔实现图像融合(步骤 + 代码)
    查看>>
    OpenCV与AI深度学习 | 基于改进YOLOv8的景区行人检测算法
    查看>>
    OpenCV与AI深度学习 | 基于机器视觉的磁瓦表面缺陷检测方案
    查看>>
    OpenCV与AI深度学习 | 基于深度学习的轮胎缺陷检测系统
    查看>>
    OpenCV与AI深度学习 | 如何使用YOLO-World做目标检测
    查看>>