python数据可视化工具 ----matplotlib

python数据可视化工具 ----matplotlib

  • 一、安装matplotlib模块
  • 二、设置绘图风格
  • 三、画布
  • 四、折线图
  • 五、垂直柱状图
  • 六、水平柱状图
  • 七、饼状图
  • 八、散点图
  • 九、设置x,y轴坐标标题
  • 十、添加注释文字
  • 十一、设置标题
  • 十二、添加图例
  • 十三、绘制多子图
  • 十四、多个子图添加总标题
  • 十五、修改默认属性
  • 十六、设置等距坐标刻度
  • 十七、设置多种(不等距)刻度
  • 十八、保存图片
  • 十九、水平线与垂直线
  • 二十、对比折线图
  • 二十一、组合柱状图
  • 二十二、设置刻度线
  • 二十三、添加带有箭头注释文本
  • 二十四、保存为图片

一、安装matplotlib模块

 pip install matplotlib

二、设置绘图风格

# 1.设置绘图风格
plt.style.use('fivethirtyeight') 
## 参数可以是文件路径 ...\site-packages\matplotlib\mpl-data\stylelib可参考此路径下文件
## 这个文件夹下,都是存放绘图风格文件,必须是“.mplstyle”结尾文件# 2.查看可选绘图风格
print(plt.style.available) 
#  ['Solarize_Light2', '_classic_test_patch', '_mpl-gallery', '_mpl-gallery-nogrid', 'bmh', 'classic', 
#  'fivethirtyeight', 'ggplot', 'grayscale', 'seaborn', 'seaborn-bright', 'seaborn-colorblind', 'seaborn-dark', 
#  'seaborn-dark-palette', 'seaborn-darkgrid', 'seaborn-talk', 'seaborn-ticks', 'fast', 
#  'seaborn-deep', 'seaborn-muted', 'seaborn-notebook', 'seaborn-paper', 'seaborn-pastel', 'seaborn-poster', 
#  'seaborn-white', 'seaborn-whitegrid', 'tableau-colorblind10','dark_background']# 3. linestyle可选项
# '-', '--', '-.', ':', 'None', ' ', '', 'solid', 'dashed', 'dashdot', 'dotted'

点击查看【绘图风格】

三、画布

def figure(num=None,  # 如果没有,则自动递增,否则1-N的整数figsize=None,  # 默认为rc figure.figsizedpi=None,  # 默认为rc figure.dpifacecolor=None,  # 默认为rc figure.facecoloredgecolor=None,  # 默认为rc figure.edgecolorframeon=True,FigureClass=Figure,clear=False,**kwargs):
# num:唯一标识符
# figsize:画布大小,默认 6.4*4.8
# dpi:每英寸的像素个数,默认100个
# facecolor:画布背景颜色
# edgecolor:画布边框颜色

四、折线图

plt.plot(x, y, color='green', marker='o', linestyle='dashed', linewidth=2, markersize=12)
# x: 表示X坐标的列表, len(x) = len(y)
# y: 表示y坐标的列表
# color: 折线的颜色(折线与坐标点)
# marker: 坐标点的样式
# linestyle: # 折线的样式(实现,虚线,....)
# linewidth: 折线的宽度
# markersize: 坐标点的大小(像素)
import matplotlib.pyplot as pltplt.style.use('classic')
plt.figure()x = [1, 2, 3]
y = [1, 2, 3]plt.plot(x, y, color='green', marker='o', linestyle='dashed', linewidth=2, markersize=12)
# 等价与上写法
plt.flot(x, y, 'go--',linewidth=2, markersize=12)# plt.plot([4, 5, 6]) == plt.plot([0, 1, 2], [1, 2, 3]) x默认使用y的索引

在这里插入图片描述

五、垂直柱状图

bar(x,    #  柱子的横坐标height,   # 柱子的高width=0.8,  # 柱子的宽bottom=None,  # 柱子在y轴的起始值tick_label=[]  # 柱子在x下方的标识*, align='center',  # 对齐方式data=None, **kwargs)
import matplotlib.pyplot as plt
import seaborn as snssns.set_style({'font.sans-serif': ['simhei', 'Arial']})  # 设置字体样式
country_name_lst= ['中国', '美国', '印度', '俄罗斯']
population_lst = [14, 3.3, 7.8, 1.46]
plt.bar(range(len(population_lst)), population_lst, color='red', tick_label=country_name_lst, bottom=2)
# plt.bar(range(len(population_lst)), population_lst, color=['r', 'g', 'b'], tick_label=country_name_lst,bottom=1)plt.ylabel("人口(亿)")  # 中文可能乱码,使用seaborn 设置字体样式
plt.xlabel("国家")
plt.show()

在这里插入图片描述

六、水平柱状图

barh(y,     #  柱子的纵坐标width,   # 柱子的宽height=0.8,  # 柱子的宽left=None,   # 每个柱子在x方向的起始坐标*, align='center', **kwargs)
import matplotlib.pyplot as plt
import seaborn as sns
sns.set_style({'font.sans-serif':['simhei','Arial']})
name_list = ['中国', '美国', '印度', '俄罗斯']
num_list = [14, 3.3, 14.1, 1.46]
plt.barh([1, 2, 3, 4], num_list, color='red', left=[1, 1, 1, 2], tick_label = name_list)
plt.ylabel("人口(亿)")
plt.ylabel("人口(亿)")
plt.savefig('test2.png', bbox_inches='tight')
plt.show()

在这里插入图片描述

七、饼状图

pie(x, # 当总和大于1时,每元素占总和的百分比;当总和小于1时,元素就是值,切会有空白explode=None, # 默认为None,表示每块距离中心点的距离labels=None,   # 表示每块标题colors=None,   # 表示每块的颜色autopct=None,  # 每块中,显示的数字占比pctdistance=0.6,  # 每块中,文字距离中心点的距离shadow=False,     # 是否添加阴影labeldistance=1.1,  # 图例距离圆心的距离startangle=0,      # 饼图的起点从x轴逆时针旋转的角度radius=1,       # 1 饼图半径长度counterclock=True, wedgeprops=None,textprops=None, center=(0, 0), frame=

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/203137.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

联通宽带+老毛子Padavan固件 开启IP v6

联通宽带开启IP v6 参考: 联通宽带开启 IPV6 的方法_联通ipv6怎么开通-CSDN博客 个人宽带如何开启IPv6网络访问 - 知乎 (zhihu.com) 首先,你要确定当前你所在的地区运营商已经开通了IPV6,可以使用手机流量 IP查询(ipw.cn) | IPv6测试 | IPv…

Altair推出 Altair RapidMiner 2023 平台,提供生成式 AI 功能

Altair推出 Altair RapidMiner 2023 平台,提供生成式 AI 功能 更新包括自动聚类、扩展 SAS、Python 和 R 编程功能等 近日,Altair(纳斯达克股票代码:ALTR)近日宣布其数据分析和 AI 平台 Altair RapidMiner 取得了一系…

ACM32F403/F433 12 位多通道,支持 MPU 存储保护功能,应用于工业控制,智能家居等产品中

ACM32F403/F433 芯片的内核基于 ARMv8-M 架构,支持 Cortex-M33 和 Cortex-M4F 指令集。芯片内核 支持一整套DSP指令用于数字信号处理,支持单精度FPU处理浮点数据,同时还支持Memory Protection Unit (MPU)用于提升应用的…

限流算法,基于go的gRPC 实现的

目录 一、单机限流 1、令牌桶算法 3、固定窗口限流算法 4、滑动窗口 二、集群限流 1、分布式固定窗口 (基于redis) 2、分布式滑动窗口 一、单机限流 1、令牌桶算法 令牌桶算法是当流量进入系统前需要获取令牌,没有令牌那么就要进行限…

Kafka使用指南

Kafka简介架构设计Kafka的架构设计关键概念Kafka的架构设计关键机制 Partition介绍Partition工作机制 应用场景ACK机制介绍ACK机制原理ACK机制对性能的影响ACK控制粒度Kafka分区数对集群性能影响调整分区优化集群性能拓展Kafka数据全局有序 Kafka简介 Kafka是由Apache软件基金…

同旺科技 USB TO RS-485 定制款适配器--- 拆解(二)

内附链接 1、USB TO RS-485 定制款适配器 ● 支持USB 2.0/3.0接口,并兼容USB 1.1接口; ● 支持USB总线供电; ● 支持Windows系统驱动,包含WIN10 / WIN11系统32 / 64位; ● 支持Windows RT、Linux、Mac OS X、Windo…

基于epoll实现Reactor服务器

了解epoll底层逻辑 在我们调用epoll_create的时候会创建出epoll模型,这个模型也是利用文件描述类似文件系统的方式控制该结构。 在我们调用epoll_create的时候,就会在内核管理中创建一个epoll模型,并且建管理模块地址给file结构体&#xff…

HNU-计算机网络-实验2-网络基础编程实验(Python3)

计算机网络 课程基础实验二 网络基础编程实验(Python3) 计科210X 甘晴void 202108010XXX 一、实验目的 ​ 通过本实验,学习采用Socket(套接字)设计简单的网络数据收发程序,理解应用数据包是如何通过传输层进行传送的。 二、实验…

ubuntu中显卡驱动,cuda,cudnn安装

1. 在ubuntu中安装显卡驱动 参考:https://blog.csdn.net/m0_37605642/article/details/119651996 2.在ubuntu中安装cuda 参考:https://blog.csdn.net/m0_61431544/article/details/127007300 2.1 安装cuda cuda官网: https://developer.n…

前端“量子纠缠”:multipleWindow3dScene 来了

最近前端实现的量子纠缠在网络上火了起来,作者bgstaal的推文:效果如下: 量子纠缠 那我们一起来看下什么是量子纠缠,以及前端是如何实现的。 什么是量子纠缠? 在量子力学里,当几个粒子在彼此相互作用后&…

大数据Doris(三十三):Doris高级设置

文章目录 Doris高级设置 一、增大内存

【华为数据之道学习笔记】2-建立企业级数据综合治理体系

数据作为一种新的生产要素,在企业构筑竞争优势的过程中起着重要作用,企业应将数据作为一种战略资产进行管理。数据从业务中产生,在IT系统中承载,要对数据进行有效治理,需要业务充分参与,IT系统确保遵从&…

AWS Remote Control ( Wi-Fi ) on i.MX RT1060 EVK - 2 “架构 AWS”

接续上一章节,我们把开发环境架设好之后,此章节叙述如何建立 AWS IoT 环境,请务必已经有 AWS Account,申请 AWS Account 之流程将不在此说明。 III-1. 登入AWS IoT, 在“管理”>“所有装置”>“实物”下点击“建…

IDEA切换Python虚拟环境

前言 因为之前一直使用的IDEA开发,换到VSCODE之后各种不习惯,特别是DEBUG的操作,特别难受,因此决心换回IDEA 环境配置 已有项目调整 进入Project 选择SDKs,新建Python 配置Conda以及虚拟环境 有就选择一个虚拟环境…

LeetCode-周赛-思维训练-中等难度

第一题 1798. 你能构造出连续值的最大数目 解题思路 我们先抛开原题不看,可以先完成一道简单的题目,假设现在就给你一个目标值X,问你能够构造出从【1~X】的连续整数,最小需要几个数? 贪心假设期望:我们要…

Path Finder for Mac:超越系统的文件管理利器

Path Finder for Mac是一款卓越的文件管理器,它不仅具备基本的文件浏览、打开、复制和移动等操作功能,还引入了一系列强大的特性,使得用户可以更高效地管理和处理文件。 一、强大的预览功能 Path Finder for Mac支持多种文件格式的预览&…

题目分析,高度理解一维二维数组的申请和[]是什么运算符

第0题: 动态申请二维数组并输出非负数和 和负数出现次数 思路:输入数组大小,然后申请内存并不对其初始化,提高速度,传入数据到申请的数组中,判断如果数组中有元素小于0对其进行计数,否则加上非0数最后输出答案,释放内存 第一题: 解答: 运行结果: 思路分析: 创建长度为20的…

RobotFramework编写用例,在Jenkins上如何实现用例的并发运行?

我们了解RobotFramework编写自动化测试用例的方法,了解如何将用例在Jenkins上运行。 但是,随着用例的增多,传统的pybot/robot命令运行测试用例会耗费大量的时间,这就慢慢成为了一个苦恼的问题。 那么,在Jenkins上如何…

JFrog Artifactory二进制文件管理工具部署使用

1.简介 JFrog Artifactory二进制文件管理工具,目前已经在使用的公司有很多,足见他的方便好用。 2.下载安装包 点击下载地址 这里我下载的是7.9.2版本 3. 安装 (1)在安装JFrog Artifactory之前需要安装好jdk(需…

9_企业架构队列缓存中间件分布式Redis

企业架构队列缓存中间件分布式Redis 学习目标和内容 1、能够描述Redis作用及其业务适用场景 2、能够安装配置启动Redis 3、能够使用命令行客户端简单操作Redis 4、能够实现操作基本数据类型 5、能够理解描述Redis数据持久化机制 6、能够操作安装php的Redis扩展 7、能够操作实现…