Matplotlib绘制一个X轴2个Y轴的图表

news2024/12/24 8:17:37

import matplotlib
matplotlib.use('Agg')  # 使用Agg后端,这个后端适用于生成图像文件但不显示它们
import matplotlib.pyplot as plt
fig = plt.figure(figsize=(15, 8))
                    # 字体使用楷体
matplotlib.rc("font", family="Microsoft YaHei")
ax1 = fig.add_subplot(111)
                   
plt.xticks(np.arange(min(xlist), max(xlist) + 1, 15), color='#000000', fontsize=15)
ax1.bar(xlist, y1, color='#0000ff', label='left')
                    
ax2 = ax1.twinx()
ax2.plot(xlist, Y2, color='#F08650', linestyle='-', linewidth=2)
ax2.tick_params(axis='y', color='#000000', labelsize=15, labelcolor='#B22222') fig.legend(labels=('y1',"Y2"),loc='lower center',frameon=False,ncol=2)
plt.savefig(r"123.png", bbox_inches='tight', pad_inches=0)

plot(x, y, linestyle=None, marker=None, color=None, label=None, **kwargs)x : 一维数组或列表,表示数据点在X轴上的位置。

y : 一维数组或列表,表示数据点在Y轴上的位置。

linestyle : (可选参数) 字符串,表示线条的样式。默认值为None,表示使用默认的线条样式。你可以指定不同的线条样式,如实线('-')、虚线('--')、点划线('-.')、点线(':')等。

marker : (可选参数) 字符串,表示数据点的标记类型。默认值为None,表示不显示数据点的标记。你可以指定不同的标记类型,如圆圈('o')、方块('s')、三角形('^')等。

color : (可选参数) 字符串,表示线条和标记的颜色。默认值为None,表示使用默认的颜色。你可以使用颜色字符串,如'red'、'blue'、'green'等,也可以使用缩写颜色字符串,如'r'、'b'、'g'等。

label : (可选参数) 字符串,表示线条的标签。默认值为None。当你想为绘制的线条添加图例时,可以设置此标签。

**kwargs : (可选参数) 这是一些可选的关键字参数,用于配置线条的其他属性,比如线条宽度、透明度等。

通过传递 x 和 y 的数据,你可以使用 plot() 方法绘制一条线。 linestyle 参数可选,用于控制线条样式; marker 参数可选,用于显示数据点的标记; color 参数可选,用于指定线条和标记的颜色; label 参数可选,用于添加线条的标签,用于图例显示。

绘制多条线时,可以多次调用 plot() 方法,每次传递不同的 x 和 y 数据,并根据需要设置不同的样式和颜色。当绘制多条线时,你可以使用 label 参数为每条线添加标签,然后使用 plt.legend() 来显示图例

plt.scatter 来绘制散点图

matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linew x :横坐标数据,是一个数组或Series,用于表示散点图中每个点的横坐标位置。

plt.bar 来绘制条形图

plt.bar(x, height, width=0.8, align='center', **kwargs)

plt.bar 来绘制水平条形图

plt.barh(y, width, height=0.8, left=None, **kwargs)

plt.pie 来绘制饼状图

plt.pie(x, explode=None, labels=None, colors=None, autopct=None, shadow=False, startangle=0, **kwargs)

1.pyplot.tick_params参数

axis——轴:{ ’ x ’ ’ y ’ ’ both ’ }

参数axis的值分别代表设置X轴、Y轴以及同时设置。默认值为 ’ both ’

reset——重置:布尔

如果为True,则在处理其他关键字参数之前将所有参数设置为默认值。默认值为False

which——其中:{ ‘ major ’ ‘ minor ’ ‘ both ’ }

参数which的值分别代表为主要次要两者。默认值为’ major '

direction / tickdir——方向: {‘in’‘out’‘inout’}

将刻度线置于轴内,轴外或两者皆有。

size / length——长度:浮点

刻度线长度(以磅为单位)。

width——宽度:浮动

刻度线宽度(以磅为单位)。

color——颜色:颜色

刻度颜色;接受任何mpl颜色规格。

pad——垫:浮球

刻度和标签之间的距离(以磅为单位)。

labelsize——标签大小:float str

刻度标签字体大小(以磅为单位)或字符串(例如,)。

labelcolor——标签颜色:颜色

刻度标签颜色;mpl颜色规格

colors——颜色:颜色

将刻度颜色和标签颜色更改为相同的值:mpl color spec

zorder——zorder:浮动

勾选并标记zorder

bottomtopleftright——底部,顶部,左侧,右侧:布尔

是否绘制各个刻度。

labelbottomlabeltoplabelleftlabelright——标签底部,标签顶部,标签左侧,标签右侧:布尔

是否绘制各个刻度标签。

labelrotation:浮动

刻度线标签逆时针旋转给定的度数

gridOn——网格线:布尔

是否添加网格线

grid_color——网格线颜色:颜色

将网格线颜色更改为给定的mpl颜色规格。

grid_alpha——网格线透明度:浮点数

网格线的透明度:0(透明)至1(不透明)。

grid_linewidth——网格线宽度:浮点数

网格线的宽度(以磅为单位)。

grid_linestyle——网格线型:字符串

任何有效的Line2D线型规范。

3.图例legend基础语法及用法

matplotlib.pyplot.legend(*args, **kwargs)

Keyword

Description

loc

Location code string, or tuple (see below).图例所有figure位置

prop

the font property字体参数

fontsize

the font size (used only if prop is not specified)

markerscale

the relative size of legend markers vs. original 图例标记与原始标记的相对大小

markerfirst

If True (default), marker is to left of the label. 如果为True,则图例标记位于图例标签的左侧

numpoints

the number of points in the legend for line 为线条图图例条目创建的标记点数

scatterpoints

the number of points in the legend for scatter plot 为散点图图例条目创建的标记点数

scatteryoffsets

a list of yoffsets for scatter symbols in legend 为散点图图例条目创建的标记的垂直偏移量

frameon

If True, draw the legend on a patch (frame). 控制是否应在图例周围绘制框架

fancybox

If True, draw the frame with a round fancybox. 控制是否应在构成图例背景的FancyBboxPatch周围启用圆边

shadow

If True, draw a shadow behind legend. 控制是否在图例后面画一个阴影

framealpha

Transparency of the frame. 控制图例框架的 Alpha 透明度

edgecolor

Frame edgecolor.

facecolor

Frame facecolor.

ncol

number of columns 设置图例分为n列展示

borderpad

the fractional whitespace inside the legend border 图例边框的内边距

labelspacing

the vertical space between the legend entries 图例条目之间的垂直间距

handlelength

the length of the legend handles 图例句柄的长度

handleheight

the height of the legend handles 图例句柄的高度

handletextpad

the pad between the legend handle and text 图例句柄和文本之间的间距

borderaxespad

the pad between the axes and legend border 轴与图例边框之间的距离

columnspacing

the spacing between columns 列间距

title

the legend title

bbox_to_anchor

the bbox that the legend will be anchored.指定图例在轴的位置

bbox_transform

the transform for the bbox. transAxes if None.

(1)设置图例位置

使用loc参数

0: ‘best'

1: ‘upper right'

2: ‘upper left'

3: ‘lower left'

4: ‘lower right'

5: ‘right'

6: ‘center left'

7: ‘center right'

8: ‘lower center'

9: ‘upper center'

10: ‘center'

参考

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

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

相关文章

【大数据】—二手车用户数据可视化分析案例

项目背景 在当今的大数据时代,数据可视化扮演着至关重要的角色。随着信息的爆炸式增长,我们面临着前所未有的数据挑战。这些数据可能来自社交媒体、商业交易、科学研究、医疗记录等各个领域,它们庞大而复杂,难以通过传统的数据处…

ISCC2024 WriteUpReverse 迷失之门

Reverse 迷失之门 迷失之门 writeup解题思路 打开题目是一个压缩包解压后是一个.exe程序 按照做题顺序第一步查壳发现并没有壳将其拖入ida中进行查看 使用shiftF12进行字符串查看 发现flag字符了我们双击它 将光标移动到yes哪里右击空白地方打开交叉索引并按F5进行反汇编发现…

Ci2451和Ci2454:2.4GHz无线MCU的芯片对比数据资料分析

一、2.4GHz无线MCU芯片的背景介绍 1、开头我们先聊聊,关于南京中科微2.4GHz无线MCU芯片(Ci2451、Ci2454、CSM2433)是建立在现有的2.4GHz射频芯片基础上面,它的内部是集成了8位RISC内核,且集成丰富的MCU资源、更小的尺寸可以来满足…

stable diffusion webui电商基础模型

电商生成模型的产生主要有两个路子,1.训练微调;2.模型融合。 下面这些是借鉴,帮助思考如何构建电商模型。 电商必备的10款Stable diffusion WebUI 模型 - 知乎一、WFProduct 电商场景这是一个专门为电商摄影场景训练的 lora 模型,可以生成各种极具设计感的场景图,效果逼真…

2024年高处安装、维护、拆除证考试题库及高处安装、维护、拆除试题解析

题库来源:安全生产模拟考试一点通公众号小程序 2024年高处安装、维护、拆除证考试题库及高处安装、维护、拆除试题解析是安全生产模拟考试一点通结合(安监局)特种作业人员操作证考试大纲和(质检局)特种设备作业人员上…

【设计模式深度剖析】【10】【行为型】【状态模式】

👈️上一篇:访问者模式 | 下一篇:解释器模式👉️ 设计模式-专栏👈️ 文章目录 状态模式定义英文定义直译如何理解呢? 状态模式的角色Context(环境类)State(抽象状态类)Concret…

实战!如何从零搭建10万级 QPS 大流量、高并发优惠券系统--图文解析

实战!如何从零搭建10万级 QPS 大流量、高并发优惠券系统–图文解析 原文链接:https://juejin.cn/post/7087824893831544845 原文作者:字节跳动技术团队 需求背景 需要设计、开发一个能够支持十万级 QPS 的优惠券系统 什么是QPS? Queri…

课程标准包括哪些内容?

老师们常常会思考:课程标准究竟包含哪些要素?课程标准不仅仅是一系列冷冰冰的条条框框,而是活生生的指导原则,引领教学实践,激发学生的潜能。 课程标准,简而言之,是对学习成果的期望和要求的明确…

观测云「可观测性解决方案」荣耀登入华为云官网

继成功上架华为云云商店联营商品后,「观测未来可观测性解决方案」已进一步正式登陆华为云官网,标志着双方合作的深化与拓展。这一全新上架的解决方案是观测云技术实力的集大成之作,为企业提供了一个全面升级的数字化监控观测服务。 观测云&am…

AI大模型“行业数据集-场景应用创新计划”启动征集

数据决定了大模型的“智力”边界。当前,在通用领域,大模型初步呈现了一定的场景应用能力,然而,在医疗健康、教育等垂直领域,大模型所展现的能力尚不足以支持专业应用,其主要原因在于模型训练缺乏高质量可用…

深入探索Java开发世界:MySQL~类型分析大揭秘

文章目录 深入探索Java开发世界:MySQL~类型分析大揭秘一、数据结构类型二、函数类型三、事物类型四、事物隔离级别类型五、数据一致性问题类型 深入探索Java开发世界:MySQL~类型分析大揭秘 MySQL数据库基础知识,类型知识点梳理~ 一、数据结构…

基于EXCEL数据表格创建省份专题地图

1 数据源 随着西藏于5月1日发布2022年一季度经济运行情况,31省份一季度GDP数据已全部出炉。 总量方面,粤苏鲁稳居前三;增速方面,23省份高于“全国线”,新疆表现最佳,增速达到7.0%。 表格表现数据不够直观…

MATLAB神经网络---lstmLayer(LSTM 长短期记忆神经网络)

前言 描述LSTM就要先描述一下循环神经网络 循环神经网络 循环神经网络通过使用带自反馈的神经元,使得网络的输出不仅和当前的输入有关,还和上一时刻的输出相关,于是在处理任意长度的时序数据时,就具有短期记忆能力。 如下是一个…

【前端vue3】TypeScrip-interface(接口)和对象类型

对象类型 定义对象需要用到interface(接口),主要用来约束数据的类型满足格式 定义方式如下: interface Person {name: string;age: number; }如对象中与接口中的属性不一致会报错,必须保持一致 例如如下&#xff1a…

web中间件漏洞-Tomcat漏洞-密码爆破、war包上传

web中间件漏洞-Tomcat漏洞-密码爆破、war包上传 密码爆破 步骤: 抓登陆包、对字典进行base64编码,爆破得到账号密码tomcat/tomcat,登陆即可 tomcat/tomcat登陆成功 服务器 查看 tomcat-users.xml里的账号密码 war包上传 步骤 上传war包、访问即可

低成本创业新篇章:上门回收小程序的崛起与挑战

在当今这个快速变化的时代,低成本创业项目成为了许多创业者的首选。其中,上门回收小程序以其独特的商业模式和市场需求,成为了创业市场中的一股新势力。本文将深入探讨上门回收小程序作为低成本创业项目的崛起之路以及面临的挑战。 一、上门回…

振弦式渗压计在土木工程安全监测中的重要性解析

在土木工程领域中,特别是涉及到坝体、隧道、路基等复杂结构的监测与安全管理时,渗压计作为一种关键的测量工具,发挥着举足轻重的作用。其中,振弦式渗压计以其独特的优点,得到了广泛的应用和认可。本文将对振弦式渗压计…

关于OS中逻辑地址与物理地址转换

首先将逻辑地址134D从十六进制转为2进制 0001 0011 0100 1101 1)1K的时候对应2的10次方 页面大小占10位 从后往前数 0001 00 || 11 0100 1101 前面的转为十进制为4 对应页号4内容1A转为2进制01 1010将这个替换原来的前六位数字 即0110 1011 0100 1101 再转换为…

字符串函数的使用和模拟实现(四)

#include<string.h> int main() { char arr1[30]{“kongchao”}; char arr2[30]{“hello world”}; strncpy(arr2,arr1,9);//拷贝九个是因为第九个字节是’\0’ printf(“%s”,arr2); return 0; } strncpy函数模拟实现 #include<stdio.h> #include<a…

勒索病毒猖狂,请提前做好安全防护,德迅卫士保护你的安全

随着互联网的飞速发展&#xff0c;网络安全问题日益凸显。其中&#xff0c;勒索病毒作为一种极具危害性的网络安全威胁&#xff0c;已经引起了广泛关注。为了帮助大家更好地预防和应对勒索病毒攻击&#xff0c;我们特地为您精心准备了这份超实用的勒索病毒自救预防指南。让我们…