python画散点图、折线图

article/2025/11/5 10:36:52

Python-画图(散点图scatter、保存savefig)及颜色大全
python中的散点图还可以这么画
(这个针对改变描点形状)

一、散点图

import numpy as np
import matplotlib.pyplot as pltplt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False
#matplotlib画图中中文显示会有问题,需要这两行设置默认字体plt.xlabel('x')
#plt.ylabel('')
plt.xlim(xmax=10,xmin=0)
plt.ylim(ymax=2,ymin=0)
x1=[]#自定义点
y1 = []#自定义点
x2=[]#自定义点
y2=[]#自定义点colors1 = 'r' #点的颜色
colors2 = 'g'
area = np.pi * 4**2  # 点面积 
plt.scatter(x1, y1, s=area, c=colors1, alpha=0.4, label='a')
plt.scatter(x2, y2, s=area, c=colors2, alpha=0.4, label='b')
#plt.plot([0,9.5],[9.5,0],linewidth = '0.5',color='#000000')
plt.legend()
plt.yticks(())
plt.title('test')
plt.show()

二、折线图

去掉上、右坐标线

import numpy as np
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.spines['right'].set_visible(False)
ax.spines['top'].set_visible(False)

解决中文乱码

plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False

设置坐标轴标题

plt.xlabel('x')
plt.ylabel('y')

设置坐标范围

plt.xlim(xmax=5,xmin=0)
plt.ylim(ymax=4,ymin=0)

自定义坐标描点连线数据

x1=[1,2,3,4,5]
y1=[2.4118,2.3837,1.5294,2.6,1.5663]
x2=x1;
y2=[0.64,0.83034,0.76093,0.32199,0.55581]

开始作图

plt.plot(x1,y1,color='r',label='test')
plt.plot(x2,y2,color='g',label='test2')

设置标题

plt.title(r'人生若只如初见')

添加图标

plt.legend()

在指定坐标处添加文字内容

plt.text(1, 3.0, r'何事秋风',color='r',fontsize=15) 
plt.text(3, 3.0, r'悲画扇',color='r',fontsize=15) 

整体效果

在这里插入图片描述
完整代码

import numpy as np
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.spines['right'].set_visible(False)
ax.spines['top'].set_visible(False)
plt.rcParams['font.sans-serif']=['SimHei']
plt.rcParams['axes.unicode_minus'] = False
plt.xlabel('x')
plt.ylabel('y')
plt.xlim(xmax=5,xmin=0)
plt.ylim(ymax=4,ymin=0)
x1=[1,2,3,4,5]
y1=[2.4118,2.3837,1.5294,2.6,1.5663]
x2=x1;
y2=[0.64,0.83034,0.76093,0.32199,0.55581]
plt.plot(x1,y1,color='r',label='test')
plt.plot(x2,y2,color='g',label='test2')
plt.title(r'人生若只如初见')
plt.legend()
plt.text(1, 3.0, r'何事秋风',color='r',fontsize=15) 
plt.text(3, 3.0, r'悲画扇',color='r',fontsize=15) 

用Pycharm运行不出图

plt.show()

保存图片到本地

其中dpi为图像的清晰度,可改高一点 比如600,图片会更大更清晰

plt.savefig('图片名字.png', dpi=300, bbox_inches='tight')#指定分辨率

其他

python plt画图横纵坐标0点重合

#移位置 设为原点相交
ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data',0))
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data',0))

y坐标轴反向

ax.invert_yaxis() #y轴反向

http://chatgpt.dhexx.cn/article/WYMBS2Cb.shtml

相关文章

Python画图之散点图(plt.scatter)

散点图的应用很广泛,以前介绍过很多画图方法:Python画图(直方图、多张子图、二维图形、三维图形以及图中图),漏掉了这个,现在补上,用法很简单,我们可以help(plt.scatter)看下它的用法…

Python 绘制数据散点图

🏳️‍🌈Python 有着强大的绘图库 matplotlib, 该库集成了大量的绘图函数,可以满足我们平时绝大多数的绘图需求。其中,matplotlib 库是 Python 进行可视化功能的主要软件包,matplot 本是 matlab 中的绘图库&#xff0c…

python画散点图

文章目录 前言一、散点图函数二、函数参数介绍三、代码实例总结 前言 最近在搞聚类算法,所以难免会用到一些散点图的用法,总结一下,方便以后参考。 一、散点图函数 #首先调用一下画图的库 import matplotlib.pyplot as plt plt.scatter(x, …

python绘制散点图

前言 散点图是指在回归分析中,数据点在直角坐标系平面上的分布图,散点图表示因变量随自变量而变化的大致趋势,据此可以选择合适的函数对数据点进行拟合。 用两组数据构成多个坐标点,考察坐标点的分布,判断两变量之间…

python绘制散点图,非常全,非常详细(已验证)

少废话,直接上代码 import matplotlib.pyplot as plt import numpy as np # 1. 首先是导入包,创建数据 n 10 x np.random.rand(n) * 2# 随机产生10个0~2之间的x坐标 y np.random.rand(n) * 2# 随机产生10个0~2之间的y坐标 # 2.创建一张figure fig …

2MSL的特点及意义

含义:2MSL是主动方在第四次挥手后进入等待时间 特点: 1、在2MSL时段中,两端的端口都不能用,除非加入SO_REUSEADDR参数&am…

TCP之2MSL

1.TCP之2MSL 1.1 MSL MSL:Maximum Segment Lifetime报文段最大生存时间,它是任何报文段被丢弃前在网络内的最长时间 为什么存在MSL TCP报文段以IP数据报在网络内传输,而IP数据报则有限制其生存时间的TTL字段,并且TTL的限制是基于跳数 MSL大小…

TCP的2MSL问题

2MSL (Maximum SegmentLifetime) TIME_WAIT状态的存在有两个理由: 让4次挥手关闭流程更加可靠;4次挥手的最后一个ACK是是由主动关闭方发送出去的,若这个ACK丢失,被动关闭方会再次发一个FIN过来。若主动关闭方能够保持一个2MSL的TI…

linux内核网络TIME_WAIT

目录 四次挥手过程 出现的现象 如何查看信息 TIME_WAIT状态等待的时间 TIME_WAIT 的作用 TIME_WAIT副作用 解决方法 1、将系统值(net.ipv4.tcp_max_tw_buckets)调小 2、调低TCP_TIMEWAIT_LEN 3、SO_LINGER 4、net.ipv4.tcp_tw_reuse 5、SO_…

TCP四次挥手 2MSL TIME_WAIT详解

TCP四次挥手 & 2MSL & TIME_WAIT详解 TCP四次挥手流程各状态解析 2MSL(2倍最大报文段生成时间)2MSL (Maximum Segment Lifetime) TIME_WAIT状态的存在有两个理由该状态为什么设计在主动关闭这一方?如何正确对待2MSL TIME_WAIT? TCP四次挥手流程 【注意】只要是申请关…

网络编程知识预备(2) —— 三次握手与四次挥手、半连接状态、2MSL

参考:网络编程知识预备(2) ——三次握手与四次挥手、流量控制(滑动窗口)、拥塞控制、半连接状态、2MSL_行稳方能走远的博客-CSDN博客 目录 一、三次握手 什么是三次握手? 三次握手图解 三次握手过程解析 (1)第一次握手 &am…

2.5Modelsim

视频链接:https://v.youku.com/v_show/id_XNTkxNDg2MTEwNA.html?x&sharefromandroid&sharekey59e4c264c93de043603d938d05eb7fd10 题目:例2.5.1中2选1数据选择器的仿真步骤 原理与目的: 原理:数据选择是指经过选择&am…

TCP的四次挥手及为什么要等待2MSL

一、四次挥手的详述 1、假设Client端发起中断连接请求,也就是发送FIN报文。 2、Server端接到FIN报文后,意思是说"我Client端没有数据要发给你了",但是如果你还有数据没有发送完成,则不必急着关闭Socket,可以…

为什么等待2MSL

下面是TCP四次挥手的图 介绍一下上图中的主要关键字 FIN_WAIT1是主动断开连接方发出关闭请求后的状态,表示主动方(主动断开TCP连接的一方)已经没有信息要发送给被动方 CLOSED_WAIT是被动方接收到主动方的关闭请求后返回ACK响应后的状态,此时被动方应该…

释放连接:四次挥手过程?为什么要等待2MSL

储备知识:TCP报文段的首部格式(讲下面提到的): 1.FIN:用来释放一个连接。当FIN1时,表示此报文段的发送方的数据已经发送完毕,并要求释放运输连接。 2. 确认ACK(acknowledgment&#…

SAML2.0使用

最近在工作中和海外一家公司对接单点登录,用到了SAML2.0协议,目前公司的单点登录 还是比较老的CASE3.5版本,不支持SAML2,要支持也要定制优,由于后面肯定是要升级,所 以不在源码上做调整支持,单独…

TCP第四次挥手后为什么要等待2MSL后才断开链接?等待时间为什么是2MSL?

为何要等待2MSL? 1.假如第四次挥手失败了,因为丢失而未到达服务器会怎样呢?这样,服务器会一直收不到客户端的回应,也就无法得知客户端是否收到了即将要断开连接的请求。客户端此刻还蒙在鼓里,还在等待服务器…

为什么TIME_WAIT状态是2MSL?(2个原因)

为什么TIME_WAIT的时间是2MSL? 先来看看上文中TIME_WAIT状态存在的两个理由。 首先看理由1,为了可靠地实现全双工连接的终止,假设图2-5中客户端发送的最后一个ACK丢失,服务端将重传FIN,为了能够收到这个超时重传的FIN…

Time-wait状态(2MSL)

本文转自:https://blog.csdn.net/overstack/article/details/8833894,尊重原创 三次握手四次挥手图: time_wait之后会等2msl。 什么是2MSL: MSL是Maximum Segment Lifetime,译为“报文最大生存时间”,他是任何报文在…

【Linux网络编程】TCP状态转换、半关闭、2MSL时长

------------->【Linux系统编程/网络编程】(学习目录汇总) <-------------- 目录 1. 三次握手、四次挥手过程中的状态变化2. TCP状态转换图3. 半关闭4. 2MSL时长4.1 为什么要2MSL时长&#xff1f;4.2 端口复用 1. 三次握手、四次挥手过程中的状态变化 先结合下图回顾一下…