IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 使用pandas以及matplotlib画出带有表格的折线图 -> 正文阅读

[Python知识库]使用pandas以及matplotlib画出带有表格的折线图

最近在研究如何画出带有表格数据的统计图,特此做个总结。

1. 明确目的

我们最终需要画出下图:
在这里插入图片描述
通过图片可以看到,该图中的折线图特点如下:

  • 带有表格数据,且在下方;
  • 图中有中文显示;
  • 不含纵坐标,且横轴起点在0;
  • 纵坐标不含刻度线,且范围设定为(-3.0,6.0)带小数点一位展示;
  • 四周不含边界线;
  • 折线图有颜色和点的形状设定;
  • 图例在表格的index上(这点暂时未能实现,如果有会的小伙伴,烦请告知,不胜感谢!)

2.导入模块

import pandas as pd
# 画图模块
import matplotlib.pyplot as plt 
# 导入可以设置坐标带小数点显示工具
import matplotlib.ticker as mtick

3.显示中文设置

# 设置字体
plt.rcParams['font.family'] = 'SimHei'
#设置正常显示字符
plt.rcParams['axes.unicode_minus'] = False

SimHei是黑体,也可以选择自己喜欢的字体

4.读取数据或者创建数据

我这里是自己手敲的

data = pd.DataFrame([[2.0, 1.8, 0.9, 0.1, 1.0,0.3, 0.7, 1.3, 1.6, 1.9, 1.7,1.5, 1.2],
                     [0.3, 0.5, -0.3, -0.7, 0.8, 1.0, 1.0, -0.6, -0.3, -0.2, -0.2, 0.4, -0.1]],
                    columns=['2020年8月','9月','10月','11月', '12月','2021年1月','2月','3月', '4月','5月','6月'
                             ,'7月', '8月'], index=['同比','环比'])

5.开始画图

fig, ax = plt.subplots(1, 1, figsize=(7, 6.5))

data = data.T
# 隐藏x轴坐标
ax.axes.xaxis.set_visible(False)

ax.tick_params(left=False)  # 隐藏刻度线

# 设置边界线
ax.spines['right'].set_color('none')
ax.spines['left'].set_color('none')
ax.spines['top'].set_color('none')
ax.spines['bottom'].set_position(('data', 0))
ax.spines['bottom'].set_color('b')

# 设置y坐标的范围
plt.ylim(-3.0, 6.0)

# 设置y轴范围带小数点
ax.yaxis.set_major_formatter(mtick.FormatStrFormatter('%.1f'))

color_map = {
    '同比': 'ro-',
    '环比': 'bd-'
}

# 画图
data.plot(table=True, ax=ax, style=color_map, markersize=8)
# plt.legend()

plt.show()

效果图如下:
在这里插入图片描述
当然这个效果一般,暂时不能把表格中的字体放大,如果有正在研究的小伙伴,欢迎交流~

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-03-30 18:19:14  更:2022-03-30 18:20:03 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 21:01:23-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码