Python的Pandas和matplotlib库:让数据可视化贼简单

在数据爆炸的时代,数据可视化已成为数据分析的关键环节。Python 作为强大的编程语言,拥有众多用于数据可视化的库,而 pandas 库在其中扮演着重要角色。它不仅能高效处理和分析数据,还具备强大的数据可视化功能,让我们轻松将枯燥的数据转化为直观、美观的图表。今天,就带大家深入了解 pandas 库的数据可视化技巧,开启数据可视化之路!

图片

Pandas库可视化基础

pandas 库基于matplotlib构建,提供了简单易用的数据可视化接口。在使用前,需确保已安装 pandas 库和 matplotlib 库:

提前使用pip命令安装pandas和matplotlib库(使用阿里云镜像)

pip install pandas matplotlib -i https://mirrors.aliyun.com/pypi/simple/

通过import pandas as pd和import matplotlib.pyplot as plt导入这两个库,我们可以使用pandas库提供的plot方法将Series和DataFrame的数据进行可视化,生成多种图表(折线图,直方图,柱状图,箱型图,面积图,饼图,散点图,六边形箱体图等)。

plot方法介绍

Series和DataFrame对象都提供了plot方法,常使用两种调用方式:

1)通过df.plot.函数名调用,如下所示

  • 折线图:df.plot.line()

  • 柱状图:df.plot.bar()

  • 水平柱状图:df.plot.barh()

  • 直方图:df.plot.hist()

  • 箱型图:df.plot.box()

  • 面积图:df.plot.area()

  • 饼图:df.plot.pie()

  • 散点图:df.plot.scatter()

  • 六边形箱体图:df.plot.hexbin()

  1. 通过df.plot调用,如下所示

df.plot(kind='line',title='line',x='name',y='math')

Plot参数如下:当数据为Series格式或DataFrame格式时,参数稍有不同;因为Series对象是一维数据,不需要传x轴和y轴的数据,相反DataFrame数据需要传x轴和y轴的数据

图片

  • kind代表("line", "bar", "barh", "kde", "scatter", "area", "hist", "box",'hexbin')表示不同的图形,默认为line。

  • x:指定数据框的列作为x轴的值。如果不指定,则默认使用数据框的索引。

  • y:指定数据框的列作为y轴的值。如果不指定,则默认使用数据框的所有列(在绘制某些类型的图形时,如折线图,需要指定y轴)

  • ax:指定在哪个matplotlib的子图对象上绘制。如果不指定,则默认使用当前的子图。

  • subplots:指定是否使用子图进行绘制。False:不使用子图,所有列绘制在同一个图上。True:使用子图,每一列绘制在一个子图上。按照给定的分组绘制子图,例如[('a', 'c'), ('b', 'd')]会创建两个子图,一个包含列'a'和'c',另一个包含列'b'和'd'。

  • sharex:是否共享x轴。如果为True,会将一些x轴标签设为不可见。如果传入了ax参数,此设置可能会改变所有子图的x轴标签

  • sharey:是否共享y轴。如果为True,会将一些y轴标签设为不可见。

  • layout:指定子图的布局,例如(2, 3)表示两行三列。

  • figsize:指定画布的大小,例如(12, 8)表示12英寸宽8英寸高。

  • use_index:是否使用数据框的索引作为x轴的刻度。如果为False,则使用x参数指定的列作为x轴。

  • title:指定绘制的标题。如果是字符串,会打印在整个画布的顶部;如果是列表,并且subplots为True,会打印每个列表元素在对应的子图上方。

  • grid:是否显示网格线。

  • legend:是否显示图例。在每个子图上显示或反转顺序。

  • style:对每列折线图设置线的类型。

  • logx、logy、loglog:是否使用对数刻度。logx设置x轴刻度是否取对数,logy设置y轴刻度是否取对数,loglog同时设置x、y轴刻度是否取对数。

  • xticks、yticks:设置x轴、y轴的刻度值,序列形式(比如列表)。

  • xlim、ylim:设置坐标轴的范围,列表或元组形式。

  • rot:设置轴标签(轴刻度)的显示旋转度数。

  • fontsize:设置轴刻度的字体大小。

  • colormap:设置图的区域颜色。

  • colorbar:如果为True,则绘制颜色条(仅适用于'scatter'和'hexbin'图)。

  • xlabel和ylabel:设置x轴和y轴的标签,描述x轴和y轴的含义

以上函数调用后,我们需要配合使用matplotlib库帮助我们生成图表,使用如下代码

举例:准备一个DataFrame数据,我们用于生成不同的图表
import pandas as pd
import matplotlib.pyplot as plt
data_dict = {'group': ['A', 'B', 'C', 'D'],
'name': ['lilei', 'lili', 'wanglei', 'wangning'],
'math': [88, 75, 98,95],
'english': [94, 89, 90,87],
'yuwen': [90, 87, 89,91]}df = pd.DataFrame(data_dict)
print(df)

结果:

图片

折线图:df.plot.line()或df.plot(kind=line)

设置x轴为name列, y轴为math列,title=line设置标题,gtrd=True添加网格线,figsize=(4,3)设置画布大小。

df.plot(kind='line',title='line',x='name',y='math',grid=True,figsize=(4,3))
或者df.plot.line(title='line',x='name',y='math',grid=True,figsize=(4,3))

执行后图如下:

图片

完整代码如下:

import matplotlib.pyplot as plt
import pandas as pd
data_dict = {'group': ['A', 'B', 'C', 'D'],
'name': ['lilei', 'lili', 'wanglei', 'wangning'],
'math': [88, 75, 98,95],
'english': [94, 89, 90,87],
'yuwen': [90, 87, 89,91]}
df = pd.DataFrame(data_dict)
df.plot(kind='line',title='line',x='name',y='math',grid=True,figsize=(4,3))
或者df.plot.line(title='line',x='name',y='math',grid=True,figsize=(4,3))
plt.show() #展示图形

除了开头介绍的plot对象的参数外,df.plot.line 常用的参数包括如下:

  • color:线条的颜色,可以是单个颜色值或颜色列表。

  • linestyle:线条的样式,例如 'solid'(实线,默认)、'dashed'(虚线)、'dotted'(点线)等

  • marker:数据点的标记样式,例如 'o'(圆形)、's'(方形)、'*'(星号)等。

  • alpha:线条的透明度,取值在 0 到 1 之间。

举例:增加上面一些参数后,重新执行(设置颜色为黑色,线条为虚线,数据点为方形)
df.plot.line(title='line',x='name',y='math',grid=True,figsize=(4,3),color='black',linestyle='dashed',marker='s')

图片

举例:在折线图上显示数值

import pandas as pd
import matplotlib.pyplot as plt
# 创建示例数据
data = {'Year': [2015, 2016, 2017, 2018, 2019],
'Sales': [100, 150, 200, 180, 250]}
df = pd.DataFrame(data)
#绘制折线图:xticks=df['Year']表示x轴的刻度跟Year这一列保持一致
ax = df.plot.line(x='Year', y='Sales',xticks=df['Year'])
# 遍历数据点添加数值
for x, y in zip(df['Year'], df['Sales']):plt.text(int(x), int(y), int(y))# 显示图形
plt.show()

程序执行后,结果如下:

图片

柱状图:df.plot.bar()或df.plot(kind=bar)

设置x轴为name列,其他三列作为y轴,并通过colormap='viridis'设置柱子的渐变颜色

df.plot.bar(x='name',y=['math','english','yuwen'],colormap='viridis')

执行后结果如下:

图片

colormap 常见的颜色如下:

  • viridis:从感知较均匀的颜色,从深蓝色到黄色。

  • magma:从黑色到粉色到黄色的渐变。

  • plasma:从深紫色到黄色的渐变。

  • inferno:从黑色到橙色到黄色的渐变。

  • cividis:从感知上较均匀的颜色映射,对色盲比较友好。

  • Greys:灰度颜色映射。

  • Reds:从浅红色到深红色的渐变。

  • Blues:从浅蓝色到深蓝色的渐变。

  • Greens:从浅绿色到深绿色的渐变。

  • Oranges:从浅橙色到深橙色的渐变。

  • Purples:从浅紫色到深紫色的渐变。

除了开头介绍的plot对象的参数外,df.plot.bar 常用的参数包括:

  • color:设置柱形的颜色,可以是单个颜色值或颜色列表。

  • width:柱形的宽度。

  • alpha:柱形的透明度,取值在 0 到 1 之间。

举例:在柱状图上显示数值

import pandasaspd
importmatplotlib.pyplotasplt
# 创建示例数据
data={'Year':[2015,2016,2017,2018,2019],
'Sales':[100,150,200,180,250]}
df=pd.DataFrame(data)
# 绘制柱状图
ax=df.plot.bar(x='Year',y='Sales')
# 遍历数据点添加数值
for p in ax.patches:
ax.annotate(str(p.get_height()),(p.get_x()+p.get_width()/2,p.get_height()),ha='center',va='center')
# 显示图形
plt.show()

程序执行后,结果如下:

图片

水平柱状图:df.plot.barh()或df.plot(kind=barh)

设置subplots=True表示每一列使用一个子图,设置x轴为name列

df.plot.barh(x='name',subplots=True)

执行后如下:

图片

df.plot.bar h常用的参数包括跟df.plot.bar的参数一致,参考如上介绍。

直方图:df.plot.hist()或者df.plot(kind=hist)

举例:设置一个DataFrame数据,包含某个value项目的数据统计,通过直方图展示。

import pandas as pd
import matplotlib.pyplot as plt
# 创建示例数据
data = {'value': [12, 25, 30, 18, 22, 35, 40, 28, 15, 20]}
df = pd.DataFrame(data)
# 使用 pandas 绘制直方图,配置一些其他参数:bins=3设置3个区间,color=green颜色设置为绿色,edgecolor='black'边框为黑色,xlabel='value',ylabel='count'设置x轴和y轴的标签。df['Value'].plot.hist(title='Histogram',bins=3, color='green', edgecolor='black',xlabel='value',ylabel='count')
# 显示图形
plt.show()

执行后结果如下:

图片

除了开头介绍的plot对象的参数外,df.plot.hist 常用的参数包括:

  • bins:指定直方图的区间数量。可以是一个整数,表示等宽的区间数量;也可以是一个序列,指定每个区间的边界。

  • color:直方图的颜色。

  • edgecolor:直方图边框的颜色。

  • alpha:直方图的透明度,取值在 0 到 1 之间。

  • grid:布尔值,决定是否显示网格线。

  • density:若为 True,则直方图的纵坐标显示概率密度;若为 False(默认),则显示频数。

  • range:指定数据的范围,以元组形式给出 (min, max) 。

  • histtype:直方图的类型,比如 'bar'(默认,垂直条形)、'barstacked'(堆叠垂直条形)、'step'(阶梯状)、'stepfilled'(填充的阶梯状) 。

饼图:df.plot.pie()或df.plot(kind=pie)

举例:设置一个DataFrame数据,包含某个项目的子项目完成进度的个数统计,通过饼图展示。

import pandas as pd
import matplotlib.pyplot as plt
# 创建示例数据
data = {'result': ['Not started','in progress','completed'],
'count':[5,10,8]}
df = pd.DataFrame(data)
# 使用 pandas 绘制饼图
#将count列作为统计数据,标签labels使用result列,
#autopct展示每个饼图区域的百分比,%1.2f%表示保留2位小数
df.plot.pie(y='count',labels=df['result'],autopct='%1.2f%')
# 显示图形
plt.show()

运行后结果如下:

图片

除了开头介绍的plot对象的参数外,df.plot.pie一些 常用的参数包括:

  • y:指定用于绘制饼图的数据列。

  • labels:指定每个扇区对应的标签。

  • colors:指定扇区的颜色,可以是单个颜色值或颜色列表。

  • explode:设置扇区的偏移程度,通常是一个与数据长度相同的小数列表,用于突出显示某些扇区。

  • shadow:布尔值,决定是否添加阴影效果,使饼图更具立体感。

  • startangle:指定起始角度,默认为 0 度,从 x 轴正方向开始。

  • autopct:用于在扇区上显示百分比格式的数值,例如 '%1.1f%%' 表示保留一位小数的百分比。

  • radius:设置饼图的半径大小。

面积图:df.plot.area()或df.plot(kind=area)

举例:设置一个DataFrame数据,表示某个项目的子项目完成进度的个数统计,通过面积图展示。

import pandas as pd
import matplotlib.pyplot as plt
# 创建示例数据
data = {'result': ['Not started','in progress','completed'],
'count':[5,10,8]}
df = pd.DataFrame(data)
# 使用 pandas 绘制面积图
#将count列作为y轴,result列作为x轴
df.plot.area(x='result',y='count',stacked=False,color='blue')# 显示图形
plt.show()

运行后结果如下:

图片

除了开头介绍的plot对象的参数外,df.plot.area 用于绘制面积图,以下是一些常用参数:

  • stacked:布尔值,决定是否堆叠面积。如果为 True,则各区域会堆叠显示;如果为 False,则区域会相互覆盖。

  • color:指定图形的颜色,可以是单个颜色值或颜色列表。

  • alpha:设置图形的透明度,取值在 0(完全透明)到 1(完全不透明)之间。

散点图:df.plot.scatter()或df.plot(kind=scatter)

举例:设置一个DataFrame数据,包含x轴和y轴的一些数字,通过散点图展示。

import pandas as pd
import matplotlib.pyplot as plt
# 创建示例数据
data = {'X': [1, 2, 3, 4, 5],
'Y': [2, 4, 6, 8, 10],
'Size': [100, 200, 150, 300, 250],
'Color': ['red', 'blue', 'green', 'yellow', 'purple']}
df = pd.DataFrame(data)
# 绘制散点图
df.plot.scatter(x='X', y='Y', s=df['Size'], c=df['Color'], marker='o', alpha=0.7)
# 显示图形
plt.show()

运行后结果如下:

图片

除了开头介绍的plot对象的参数外,df.plot.scatter 常用的参数包括:

  • s:控制点的大小,可以是一个固定值或者一个与数据长度相同的数组来为每个点设置不同的大小。

  • c:控制点的颜色,可以是一个固定的颜色值,也可以是一个与数据长度相同的数组来为每个点设置不同的颜色。

  • marker:点的标记样式,例如 'o'(圆形)、's'(方形)、'*'(星号)等。

  • alpha:点的透明度,取值在 0(完全透明)到 1(完全不透明)之间。

  • edgecolors:点的边缘颜色。

  • linewidths:点的边缘线宽。

箱型图:df.plot.box()或df.plot(kind=box)

举例:设置一个DataFrame数据,表示股票在K线图中的最高价(High Price)、最低价(Low Price)、收盘价(Close Price)和开盘价(Open Price),通过箱体图展示。

import pandas as pd
import matplotlib.pyplot as plt
# 创建示例数据
data = {'type': ['High Price','Open Price','Low Price','Close Price'],'price':[10.22,9.99,9.78,10.10]}df = pd.DataFrame(data)
# 使用 pandas 绘制箱体图
#将'price'列作为y轴
df.plot.box(column='price')# 显示图形
plt.show()

运行后结果如下:

图片

除了开头介绍的plot对象的参数外,df.plot.box 的一些常用参数:

  • column:指定要绘制箱线图的数据列名。

  • by:用于分组的列名,以便为不同的组绘制单独的箱线图。

  • color:箱线图的颜色。

  • sym:异常值的标记样式。

  • vert:布尔值,决定箱线图是垂直绘制(True,默认)还是水平绘制(False)。

  • widths:箱线图的宽度。

  • notch:布尔值,如果为 True,则绘制带缺口的箱线图。

  • patch_artist:布尔值,如果为 True,则用填充的方式绘制箱体。

六边形箱体图:df.plot.hexbin()或df.plot(kind=hexbin)

举例:设置一个DataFrame数据,随机生成数量一致的x轴和y轴的数据,通过六边形箱体图展示。

import pandas as pd
import matplotlib.pyplot as plt
import random
# 创建示例数据
x = [random.randint(0,100) for i in range(20)]
y = [random.randint(0,100) for i in range(20)]
df = pd.DataFrame({'X': x, 'Y': y})
# 绘制六边形箱体图
df.plot.hexbin(x='X', y='Y', gridsize=20, color='k')
# 显示图形
plt.show()

运行后结果如下:

图片

除了开头介绍的plot对象的参数外,df.plot.hexbin 用于绘制六边形分箱图。以下是一些常用参数:

  • gridsize:控制六边形网格的大小。较小的值会产生更多、更精细的六边形。

  • C:可以指定与每个点相关的值,用于给六边形着色。

  • reduce_C_function:用于聚合 C 值的函数,例如 np.mean(默认)、np.sum 等。

  • mincnt:六边形中包含的最小点数,少于这个点数的六边形不会被绘制。

  • xscale、yscale:控制 X 轴和 Y 轴的缩放,例如 'linear'(默认)、'log' 等。

  • color:六边形的颜色。

  • cmap:颜色映射(Color Map),用于根据 C 值进行颜色映射。

大家注意了,以上图表暂不支持中文(中文会有乱码),如果需要中文可能要再继续探索下了。

共勉: 东汉·班固《汉书·枚乘传》:“泰山之管穿石,单极之绠断干。水非石之钻,索非木之锯,渐靡使之然也。”

-----指水滴不断地滴,可以滴穿石头;

-----比喻坚持不懈,集细微的力量也能成就难能的功劳。

----感谢读者的阅读和学习,谢谢大家。

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

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

相关文章

【代码分享】基于IRM和RRT*的无人机路径规划方法详解与Matlab实现

基于IRM和RRT*的无人机路径规划方法详解与Matlab实现 1. IRM与RRT*的概述及优势 IRM(Influence Region Map)通过建模障碍物的影响区域,量化环境中的安全风险,为RRT算法提供启发式引导。RRT(Rapidly-exploring Random…

ubuntu打包 qt 程序,不用每次都用linuxdeployqt打包

用linuxdeployqt打包太麻烦,每次程序编译都要用linuxdeployqt打包一次,而且每次都要很长时间,通过研究得出一个新的打包方法 1.用用linuxdeployqt得出依赖的库文件(只要没有增加新模块,只要用一次就可以) …

Github 2025-03-06 Go开源项目日报 Top10

根据Github Trendings的统计,今日(2025-03-06统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Go项目10Terraform:基础设施即代码的开源工具 创建周期:3626 天开发语言:Go协议类型:OtherStar数量:40393 个Fork数量:9397 次关注人数:…

redis 与 DB 的一致性 7 种策略

为什么要使用 redis 做缓存?封底估算为什么是单行数据的QPS,而不是总的? 什么时候使用DB,Redis,本地缓存 数据的分类一致性的方案1. 先清除Redis,再更新 DB2. 先更新DB,再清除 Redis使用场景: 3. 延迟删除与延迟双删使用场景 4. 监听 binlog 清除5. 双写使用场景: 6. 监听bin…

使用 Elasticsearch 进行集成测试初始化​​数据时的注意事项

作者:来自 Elastic piotrprz 在创建应该使用 Elasticsearch 进行搜索、数据聚合或 BM25/vector/search 的软件时,创建至少少量的集成测试至关重要。虽然 “模拟索引” 看起来很诱人,因为测试甚至可以在几分之一秒内运行,但它们实际…

【selenium工具操作web页面中的下拉框元素 】

使用F12定位下拉框中的元素 使用F12定位下拉框中的元素 1、有一类元素不是直接显示的页面上的,而是需要点击某些其他元素后才会显示在页面上,比如这里的下拉框。 2、这类元素会有一个特点:鼠标如果移开(没在元素上),这些元素就会…

C++ set map 详解

文章目录 1. 容器2. set和multiset2.1 set2.1.1 构造函数2.1.2 insert和erase2.1.2.1 insert2.1.2.2 erase 2.1.3 查找和访问2.1.3.1 set迭代器相关2.1.3.2 find && count2.1.3.3 范围查找 2.2 multiset2.2.1 insert和erase2.2.2 find和count 2.3 set和multiset的在算法…

Unity网络开发基础 (2) 网络协议基础

本文章不作任何商业用途 仅作学习与交流 部分图片来自Unity唐老师 目录 1.虚拟模型 2.实际模型 TCP/IP 3.传输层协议 TCP/UDP TCP 协议详解 1. 核心机制 2. 头部格式(20 字节最小) UDP 协议详解 1. 核心特点 2. 头部格式(固定 8 字节…

HTML label 标签使用

点击 <label> 标签通常会使与之关联的表单控件获得焦点或被激活。 通过正确使用 <label> 标签&#xff0c;可以使表单更加友好和易于使用&#xff0c;同时提高整体的可访问性。 基本用法 <label> 标签通过 for 属性与 id 为 username 的 <input> 元素…

JDBC、MyBatis 、MyBatis-Plus面试总结(一)

以下为你整理了一些 MyBatis 和 MyBatis-Plus 中 mapper.xml 相关的常见面试问题及答案&#xff1a; 基础概念类 问题 1&#xff1a;什么是 mapper.xml 文件&#xff0c;它在 MyBatis 中有什么作用&#xff1f; 答案&#xff1a;mapper.xml 文件是 MyBatis 中用于定义 SQL 语…

GCC RISCV 后端 -- GCC Passes 注释

在前面文章提到&#xff0c;当GCC 前端完成对C源代码解析完成后&#xff0c;就会使用 处理过程&#xff08;Passes&#xff09;机制&#xff0c;通过一系列的处理过程&#xff0c;将 GENERIC IR 表示的C程序 转步转换成 目标机器的汇编语言。过程描述如下图所示&#xff1a; 此…

基于Python实现的智能旅游推荐系统(Django)

基于Python实现的智能旅游推荐系统(Django) 开发语言:Python 数据库&#xff1a;MySQL所用到的知识&#xff1a;Django框架工具&#xff1a;pycharm、Navicat 系统功能实现 总体设计 系统实现 系统首页模块 统首页页面主要包括首页&#xff0c;旅游资讯&#xff0c;景点信息…

鸿蒙全栈开发 D2

课程目标 掌握ArkTS基础语法与核心概念理解声明式UI开发范式能独立开发简单鸿蒙应用组件建立规范的代码编写习惯 第一部分&#xff1a;初识ArkTS 1.1 语言全景认知 #mermaid-svg-V5mnjQN3DAHkfoBo {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size…

【YashanDB认证】yashandb23.3.1 个人版单机部署安装实践

YCA报名链接如下: YashanDB|崖山数据库系统YashanDB学习中心-YCA认证详情 目前免费 主要参考文档&#xff1a; 单机&#xff08;主备&#xff09;部署 | YashanDB Doc 另外还参考摩天轮文章&#xff1a; YashanDB 23.2.9.101 企业版安装步骤抢先看&#xff01; - 墨天轮 …

【蓝桥杯】每天一题,理解逻辑(3/90)【Leetcode 快乐数】

闲话系列&#xff1a;每日一题&#xff0c;秃头有我&#xff0c;Hello&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;,我是IF‘Maxue&#xff0c;欢迎大佬们来参观我写的蓝桥杯系列&#xff0c;我好久没有更新博客了&#xff0c;因为up猪我寒假用自己的劳动换了…

爬虫Incapsula reese84加密案例:Etihad航空

声明: 该文章为学习使用,严禁用于商业用途和非法用途,违者后果自负,由此产生的一切后果均与作者无关 一、找出需要加密的参数 1.js运行 atob(‘aHR0cHM6Ly93d3cuZXRpaGFkLmNvbS96aC1jbi8=’) 拿到网址,F12打开调试工具,随便搜索航班,切换到network搜索一个时间点可以找…

缓存雪崩 缓存击穿 缓存穿透

1. redis使用场景-缓存-缓存穿透 在实际开发中&#xff0c;Redis 被广泛应用于缓存&#xff0c;以提高系统性能和响应速度。然而&#xff0c;在使用缓存时&#xff0c;需要注意一些问题&#xff0c;其中 缓存穿透 是一个常见且需要重点关注的场景。 什么是缓存穿透 ● 缓存穿…

【YOLOv12改进trick】多尺度大核注意力机制MLKA模块引入YOLOv12,实现多尺度目标检测涨点,含创新点Python代码,方便发论文

🍋改进模块🍋:多尺度大核注意力机制(MLKA) 🍋解决问题🍋:MLKA模块结合多尺度、门控机制和空间注意力,显著增强卷积网络的模型表示能力。 🍋改进优势🍋:超分辨的MLKA模块对小目标和模糊目标涨点很明显 🍋适用场景🍋:小目标检测、模糊目标检测等 🍋思路…

better-sqlite3之exec方法

在 better-sqlite3 中&#xff0c;.exec() 方法用于执行包含多个 SQL 语句的字符串。与预编译语句相比&#xff0c;这种方法性能较差且安全性较低&#xff0c;但有时它是必要的&#xff0c;特别是当你需要从外部文件&#xff08;如 SQL 脚本&#xff09;中执行多个 SQL 语句时。…

电路基础:【1】PN结二极管制作电桥点亮LED灯

第一章&#xff1a;PN结二极管制作电桥点亮LED灯 文章目录 第一章&#xff1a;PN结二极管制作电桥点亮LED灯前言一、电路原理二、电路图与元器件1.电路图 做实验总结 前言 在本章中&#xff0c;我们将探讨如何通过PN结二极管制作电桥电路&#xff0c;并利用该电路点亮LED灯。L…