Matplotlib初探:认识数据可视化与Matplotlib
Matplotlib初探:认识数据可视化与Matplotlib
🌵文章目录🌵
- 🌳引言🌳
- 🌳一、数据可视化简介🌳
- 🌳二、Matplotlib库简介🌳
- 🌳三、Matplotlib的安装与使用🌳
- 🌳四、Matplotlib的基本概念🌳
- 🌳五、Matplotlib的常用函数与图表类型🌳
- 🌳六、Matplotlib的高级特性🌳
- 🌳七、总结与展望🌳
- 🌳八、Fig.1可视化完整代码🌳
- 🌳结尾🌳
🌳引言🌳
在数字化浪潮的推动下,数据日益成为我们认识世界、洞察事物本质的关键钥匙。然而,原始数据犹如漫天繁星,虽然璀璨夺目,却需要专业的工具来解读其语言,揭开背后的秘密。为此,我们推出《Matplotlib之旅:零基础精通数据可视化》专栏,旨在为广大读者提供一个系统、专业且易于理解的学习平台。
作为专栏的开篇之作,本文旨在为读者呈现Matplotlib的基本概念、重要性及其在数据可视化领域的广泛应用。我们将通过严谨的逻辑和深入浅出的阐述,让您轻松理解Matplotlib在数据可视化领域的重要地位,以及它如何将枯燥的数据转化为生动、直观的图形和图像。
无论您是数据可视化的新手,还是有一定基础的进阶者,本专栏都将为您提供宝贵的知识和指导。我们将从基础概念出发,逐步引导您掌握Matplotlib的核心功能和高级特性,让您在数据可视化的道路上越走越宽广。
我们坚信,通过《Matplotlib之旅:零基础精通数据可视化》专栏的学习,您将能够轻松驾驭数据,用视觉的力量揭示隐藏在数据背后的奥秘。
专栏地址:《Matplotlib之旅:零基础精通数据可视化》
🚀 早订阅,早受益🚀
🌳一、数据可视化简介🌳
数据可视化是一种将大量数据转换成直观图形的过程,旨在帮助人们更好地理解和分析信息。通过图表、图像和互动界面,数据可视化能够将复杂的数据集变得简单易懂,揭示数据背后的模式和趋势。无论是商业决策、科学研究还是日常生活,数据可视化都可以发挥重要作用。数据可视化的重要性主要体现在以下几个方面:
-
直观易懂:图形化的数据展示方式比纯文本更容易被人类理解和接受。通过视觉感知,我们能够更快地获取和解读信息。
-
发现规律:通过数据可视化,我们可以发现数据之间的关联和规律,为决策提供支持。
-
辅助分析:数据可视化能够辅助我们进行数据分析,比如通过对比、趋势预测等方式,发现数据中的异常和潜在问题。
-
沟通桥梁:在团队协作或项目报告中,数据可视化可以作为沟通的桥梁,帮助非专业人士更好地理解数据和分析结果。
🌳二、Matplotlib库简介🌳
Matplotlib是一个在Python中广泛使用的绘图库,它提供了一种简单而强大的方式来创建各种类型的图表。无论您是科学家、工程师还是数据分析师,Matplotlib都能帮助您将复杂的数据可视化,从而更直观地理解和分析数据。
Matplotlib拥有丰富的绘图工具,可以创建线图、柱状图、散点图、饼图等,并支持自定义样式和交互功能。它拥有强大的扩展性,可以与其他Python库(如NumPy、Pandas等)无缝集成,使数据处理和可视化变得轻松高效。
使用Matplotlib,您可以轻松地创建高质量的图表,将数据以美观且易于理解的方式呈现出来,从而更好地传达您的分析结果和见解。
🌳三、Matplotlib的安装与使用🌳
在使用Matplotlib之前,需要先安装Python环境(参考链接)。
-
Matplotlib可以通过pip命令进行安装,安装命令如下:
pip install matplotlib
-
Matplotlib也可以通过conda命令进行安装,安装命令如下:
conda install -c conda-forge matplotlib
安装完成后,就可以在Python脚本中导入Matplotlib库,并开始绘图了。下面是一个简单的例子,展示如何使用Matplotlib绘制一个线形图:
import matplotlib.pyplot as plt# 准备数据
x = [1, 2, 3, 4, 5, 6]
y = [4, 3, 2, 4, 6, 8]# 创建图表
plt.plot(x, y, c="r")# 设置图表标题和坐标轴标签
plt.title('Simple Line Chart')
plt.xlabel('X Axis')
plt.ylabel('Y Axis')# 显示图表
plt.show()
数据可视化结果如下:
在这个代码示例中,我们首先导入了Matplotlib的pyplot模块,并给它取了一个别名plt。然后,我们准备了一组x和y坐标的数据,用于绘制线形图。接着,我们调用plt.plot()函数来创建图表,并通过plt.title()、plt.xlabel()和plt.ylabel()函数来设置图表的标题和坐标轴标签。最后,我们调用plt.show()函数来显示图表。
🌳四、Matplotlib的基本概念🌳
在使用Matplotlib进行数据可视化时,需要了解几个基本的概念:
概念 | 描述 |
---|---|
Figure(画布) | Matplotlib中的顶级容器,代表整个图像或绘图区域。可以看作是一个包含所有绘图元素的窗口或页面。在此画布上,可以添加一个或多个子图(Axes)。 |
Axes(子图/坐标轴) | Matplotlib中的核心概念,代表一个具体的图表或绘图区域,用于绘制线、散点图、柱状图等。一个Figure可以包含一个或多个Axes,每个Axes都有自己独立的坐标系统。Axes中包含标题、坐标轴标签、刻度等元素。 |
Axis(坐标轴) | Axes对象的一部分,负责处理与坐标轴相关的元素,如刻度、刻度标签、坐标轴标签等。在每个Axes对象中,通常会有两个或三个Axis对象,分别代表x轴、y轴(以及可能的z轴)。 |
Tick(刻度) | Axis对象的一部分,表示坐标轴上的刻度线和刻度标签。刻度用于指示数据点在坐标轴上的位置,并帮助读者理解数据的范围和分布。 |
Artist(绘图元素) | Matplotlib中所有可见元素的基类,包括Lines、Patches、Text、Images等。几乎所有的绘图函数都会返回一个Artist对象,这些对象可以被添加到Axes对象中,并最终显示在Figure上。 |
Plotting Functions(绘图函数) | Matplotlib提供的绘图函数,如plot() , scatter() , bar() , hist() 等,用于在Axes对象上绘制各种类型的图表。这些函数通常接受数据和一些可选参数,用于定制图表的外观和样式。 |
如上表所示,这些基本概念构成了Matplotlib库的核心框架,使得用户能够灵活地创建和定制各种复杂的图表。
🌳五、Matplotlib的常用函数与图表类型🌳
Matplotlib提供了丰富的函数和图表类型,下面列举了一些常用的函数和图表类型:
-
plt.plot():绘制线形图。
-
plt.scatter():绘制散点图。
-
plt.bar():绘制柱状图。
-
plt.pie():绘制饼图。
-
plt.imshow():用于显示图像。
-
plt.contour():绘制等高线图。
-
plt.hist():绘制直方图。
-
plt.boxplot():绘制箱线图。
-
plt.violinplot():绘制小提琴图。
-
plt.subplot():创建子图。
这些函数只是Matplotlib库中的一小部分,通过组合使用这些函数和图表类型,我们可以创建出各种各样的数据可视化作品。
🌳六、Matplotlib的高级特性🌳
除了基本的图表类型和函数外,Matplotlib还提供了许多高级特性,使得数据可视化更加灵活和丰富。以下是一些Matplotlib的高级特性:
-
自定义样式:Matplotlib允许用户自定义图表的样式,包括颜色、字体、线条粗细等。用户可以通过修改默认的配置文件或者使用
plt.style
模块来定制自己的样式。 -
图例和标注:Matplotlib支持添加图例、标题、坐标轴标签等文本标注,以及箭头、文本框等图形标注。这些标注可以帮助读者更好地理解图表中的数据和关系。
-
多图显示:Matplotlib支持在一个窗口中显示多个图表,可以通过
plt.subplots()
函数创建多个子图,并通过调整子图的位置和大小来实现多图显示。 -
交互式绘图:Matplotlib支持创建交互式图表,用户可以通过鼠标进行缩放、平移、选择等操作,以便更深入地探索数据。
-
保存图表:Matplotlib支持将图表保存为多种文件格式,如PNG、JPG、SVG等。用户可以通过
plt.savefig()
函数将图表保存到磁盘上。
🌳七、总结与展望🌳
通过本文的初步探索,我们了解了数据可视化的重要性以及Matplotlib库的基本概念和使用方法。Matplotlib作为Python中非常流行的数据可视化库,提供了丰富的绘图工具和高级特性,可以帮助我们轻松创建出美观、直观的数据可视化作品。
当然,本文只是Matplotlib库的入门介绍,还有许多高级功能和用法等待我们去探索和学习。在未来的学习中,我们可以进一步深入了解Matplotlib的更多特性和用法,结合实际应用场景,创造出更加精彩的数据可视化作品。最后,希望本文能够帮助你入门Matplotlib库,并在数据可视化的道路上越走越远。如果你对Matplotlib还有其他疑问或者想要了解更多相关内容,欢迎在评论区留言交流。
🌳八、Fig.1可视化完整代码🌳
"""
本脚本用于生成一个2x4的子图布局,其中包含多种类型的图表:折线图、柱状图、散点图、饼图、直方图、箱线图、堆叠条形图和散点图矩阵。
"""import numpy as np
import matplotlib.pyplot as plt# 创建2行4列的子图布局
fig, axs = plt.subplots(nrows=2, ncols=4, figsize=(20, 10)) # 修改了nrows和ncols的值# 折线图
def plot_line():"""Draw a Line Plot"""x = np.linspace(0, 10, 100)y = np.sin(x)axs[0, 0].plot(x, y)axs[0, 0].set_title('Line Plot')# 柱状图
def plot_bar():"""Draw a Bar Plot"""categories = ['A', 'B', 'C', 'D', 'E']values = [23, 45, 56, 78, 34]axs[0, 1].bar(categories, values)axs[0, 1].set_title('Bar Plot')# 散点图
def plot_scatter():"""Draw a Scatter Plot"""x = np.random.rand(50)y = np.random.rand(50)axs[0, 2].scatter(x, y)axs[0, 2].set_title('Scatter Plot')# 饼图
def plot_pie():"""Draw a Pie Chart"""labels = ['A', 'B', 'C', 'D']sizes = [15, 30, 45, 10]axs[0, 3].pie(sizes, labels=labels, autopct='%1.1f%%')axs[0, 3].axis('equal') # Ensure the pie is drawn as a circleaxs[0, 3].set_title('Pie Chart')# 直方图
def plot_histogram():"""Draw a Histogram"""data = np.random.randn(1000)axs[1, 0].hist(data, bins=30)axs[1, 0].set_title('Histogram')# 箱线图
def plot_boxplot():"""Draw a Box Plot"""data = [np.random.normal(0, std, 100) for std in range(1, 4)]axs[1, 1].boxplot(data, labels=['Std 1', 'Std 2', 'Std 3'])axs[1, 1].set_title('Box Plot')# 堆叠条形图
def plot_stacked_bar():"""Draw a Stacked Bar Plot"""N = 5menMeans = (20, 35, 30, 35, 27)womenMeans = (25, 32, 34, 20, 25)ind = np.arange(N)width = 0.35p1 = axs[1, 2].bar(ind, menMeans, width)p2 = axs[1, 2].bar(ind, womenMeans, width, bottom=menMeans)axs[1, 2].set_ylabel('Scores')axs[1, 2].set_title('Stacked Bar Plot')axs[1, 2].set_xticks(ind)axs[1, 2].set_xticklabels(('G1', 'G2', 'G3', 'G4', 'G5'))axs[1, 2].legend((p1[0], p2[0]), ('Men', 'Women'))# 散点图矩阵
def plot_pairplot():"""Draw a Scatterplot Matrix"""np.random.seed(0)n_samples, n_features = 50, 4X = np.random.randn(n_samples, n_features)axs[1, 3].scatter(X[:, 0], X[:, 1], color='blue')axs[1, 3].scatter(X[:, 0], X[:, 2], color='red')axs[1, 3].scatter(X[:, 1], X[:, 2], color='green')axs[1, 3].set_title('Scatterplot Matrix')# 调用函数来绘制每个图表
plot_line()
plot_bar()
plot_scatter()
plot_pie()
plot_histogram()
plot_boxplot()
plot_stacked_bar()
plot_pairplot()# 为每个子图添加标签
for ax in axs.ravel():ax.label_outer()# 调整布局以优化显示
plt.tight_layout()# 显示图表
plt.show()
🌳结尾🌳
亲爱的读者,首先感谢您抽出宝贵的时间来阅读我们的博客。我们真诚地欢迎您留下评论和意见💬。
俗话说,当局者迷,旁观者清。您的客观视角对于我们发现博文的不足、提升内容质量起着不可替代的作用。
如果博文给您带来了些许帮助,那么,希望您能为我们点个免费的赞👍👍/收藏👇👇,您的支持和鼓励👏👏是我们持续创作✍️✍️的动力。
我们会持续努力创作✍️✍️,并不断优化博文质量👨💻👨💻,只为给您带来更佳的阅读体验。
如果您有任何疑问或建议,请随时在评论区留言,我们将竭诚为你解答~
愿我们共同成长🌱🌳,共享智慧的果实🍎🍏!
万分感谢🙏🙏您的点赞👍👍、收藏⭐🌟、评论💬🗯️、关注❤️💚~
相关文章:
Matplotlib初探:认识数据可视化与Matplotlib
Matplotlib初探:认识数据可视化与Matplotlib Fig.1 利用Matplotlib进行数据可视化( 可视化代码见文末) 🌵文章目录🌵 🌳引言🌳🌳一、数据可视化简介🌳🌳二、Matplotlib库简介&#x…...
LeetCode 0987.二叉树的垂序遍历:遍历时存节点信息,遍历完自定义排序
【LetMeFly】987.二叉树的垂序遍历:遍历时存节点信息,遍历完自定义排序 力扣题目链接:https://leetcode.cn/problems/vertical-order-traversal-of-a-binary-tree/ 给你二叉树的根结点 root ,请你设计算法计算二叉树的 垂序遍历…...
TCP 和 UDP的区别
文章目录 概述区别UDPTCPTCP与UDP的选择UDP和TCP编程区别 概述 TCP(Transmission Control Protocol,传输控制协议)和 UDP(User Datagram Protocol,用户数据报协议)是互联网中两种最常用的传输层协议 总的来…...
Python 将一维数组或矩阵变为三维
Python 将一维数组或矩阵变为三维 正文 正文 话不多说直接上代码: import numpy as npsampling_points 10001arr np.linspace(0, 2, sampling_points) arr_3D arr.reshape(1, 1, -1) print(arr_3D) """ result: [[[0.0000e00 2.0000e-04 4.0000…...
Python如何实现定时发送qq消息
因为生活中老是忘记各种事情,刚好又在学python,便突发奇想通过python实现提醒任务的功能(尽管TIM有定时功能),也可定时给好友、群、讨论组发送qq消息。其工作流程是:访问数据库提取最近计划——>根据数据…...
支付方式接入:支付宝、微信支付、微软支付
支付方式接入:支付宝、微信支付、微软支付 1、微信支付-接入指引 2、支付宝-接入指引 3、微软支付-接入指引 3.1、使用visual studio打包应用(发布到微软市场):Package a desktop app from source code using Visual Studio -…...
C++中的互斥量
互斥量是一个类,互斥量的使用必须引入头文件#include <mutex>。互斥量就如同一把锁,在同一时间,多个线程都可以调用lock成员函数尝试给这把锁头加锁,但是只有一个线程可以成功给这把锁加锁,其他没有加锁成功的线…...
盲盒小程序开发
现如今,盲盒已经成为了市场上不可忽视的新型消费模式,并且也逐渐遍布在全球各地中。盲盒的种类商品也逐渐丰富完善,不在局限于性价比高的盲盒玩具、手办等,也发展到了美妆、电子、食品等行业,具有较大的实用性和收藏价…...
安装 Windows 10
1.镜像安装 镜像安装:安装Windows 10 2.安装过程(直接以图的形式呈现) 选择专业版的 等待安装即可...
C++文件操作->文本文件(->写文件、读文件)、二进制文件(->写文件、读文件)
#include<iostream> using namespace std; #include <fstream>//头文件包含 //文本文件 写文件 void test01() { //1.包含头文件 fstream //2.创建流对象 ofstream ofs; //3.指定打开方式 ofs.open("test.txt", ios::out); //4.写…...
Mac相关问题
Mac 更新node版本 第一步,先查看本机node.js版本: node -v 第二步,清除node.js的cache: sudo npm cache clean -f 第三步,安装 n 工具,这个工具是专门用来管理node.js版本的,别怀疑这个工具…...
Python爬虫之Splash详解
爬虫专栏:http://t.csdnimg.cn/WfCSx Splash 的使用 Splash 是一个 JavaScript 渲染服务,是一个带有 HTTP API 的轻量级浏览器,同时它对接了 Python 中的 Twisted 和 QT 库。利用它,我们同样可以实现动态渲染页面的抓取。 1. 功…...
Deep深度系统下载安装Beyond compare4
Beyond Compare 4下载和安装 1、在线安装 Debian, Ubuntu安装命令: wget https://www.scootersoftware.com/bcompare-4.4.6.27483_amd64.deb sudo apt update sudo apt install ./bcompare-4.4.6.27483_amd64.deb Redhat Enterprise Linux, Fedora, CentOS安装命令…...
Qt 使用QScintilla 编辑lua 脚本
需求: 利用QScintilla 编辑lua 脚本 步骤: 1,下载 QScintilla Riverbank Computing | Download 2, 打开 src/qscintilla.pro 文件 编译出 dll库 3,工程中引入这个库 注意debug 模式 必须加载debug 版本编译的库࿰…...
2022长安杯复现
案件情况 某地警方接到受害人报案称其在某虚拟币交易网站遭遇诈骗,该网站号称使用“USTD 币”购买所谓的“HT 币”,受害人充 值后不但“HT 币”无法提现、交易,而且手机还被恶意软件锁定 勒索。警方根据受害人提供的虚拟币交易网站调取了对应…...
Netty Review - NioEventLoopGroup源码解析
文章目录 概述类继承关系源码分析小结 概述 EventLoopGroup bossGroup new NioEventLoopGroup(1); EventLoopGroup workerGroup new NioEventLoopGroup();这段代码是在使用Netty框架时常见的用法,用于创建两个不同的EventLoopGroup实例,一个用于处理连…...
团队配置管理规范浅见
在一段时间的工作过程中配置管理工作确实对我们的生产活动产生了巨大的工作量,现在就这个工作来进行梳理一下。 本文主要分为两部分: 1、借用软件系统分析师的配置管理部分内容来介绍配置管理的工作(原谅时间精力有限,原文基本已…...
「算法」二分查找1:理论细节
🎇个人主页:Ice_Sugar_7 🎇所属专栏:算法详解 🎇欢迎点赞收藏加关注哦! 二分查找算法简介 这个算法的特点就是:细节多,出错率高,很容易就写成死循环有模板,但…...
【网络安全】什么样的人适合学?该怎么学?
有很多想要转行网络安全或者选择网络安全专业的人在进行决定之前一定会有的问题: 什么样的人适合学习网络安全?我适不适合学习网络安全? 当然,产生这样的疑惑并不奇怪,毕竟网络安全这个专业在2017年才调整为国家一级…...
从零开始学习数据结构—【链表】—【探索环形链的设计之美】
环形链表 文章目录 环形链表1.结构图2.具体实现2.1.环形链表结构2.2.头部添加数据2.2.1.具体实现2.2.2.测试添加数据 2.3.尾部添加数据2.3.1.具体实现2.3.2.添加测试数据 2.4.删除头部数据2.4.1.具体实现2.4.2.测试删除数据 2.5.删除尾部数据2.5.1.具体实现2.5.2.测试删除数据 …...
AJAX——HTTP协议
1 HTTP协议-请求报文 HTTP协议:规定了浏览器发送及服务器返回内容的格式 请求报文:浏览器按照HTTP协议要求的格式,发送给服务器的内容 1.1 请求报文的格式 请求报文的组成部分有: 请求行:请求方法,URL…...
java面试微服务篇
目录 目录 SpringCloud Spring Cloud 的5大组件 服务注册 Eureka Nacos Eureka和Nacos的对比 负载均衡 负载均衡流程 Ribbon负载均衡策略 自定义负载均衡策略 熔断、降级 服务雪崩 服务降级 服务熔断 服务监控 为什么需要监控 服务监控的组件 skywalking 业务…...
JS进阶——垃圾回收机制以及算法
版权声明 本文章来源于B站上的某马课程,由本人整理,仅供学习交流使用。如涉及侵权问题,请立即与本人联系,本人将积极配合删除相关内容。感谢理解和支持,本人致力于维护原创作品的权益,共同营造一个尊重知识…...
【快速解决】python项目打包成exe文件——vscode软件
目录 操作步骤 1、打开VSCode并打开你的Python项目。 2、在VSCode终端中安装pyinstaller: 3、运行以下命令使用pyinstaller将Python项目打包成exe文件: 其中your_script.py是你的Python脚本的文件名。 4、打包完成后,在你的项目目录中会…...
数据结构——lesson3单链表介绍及实现
目录 1.什么是链表? 2.链表的分类 (1)无头单向非循环链表: (2)带头双向循环链表: 3.单链表的实现 (1)单链表的定义 (2)动态创建节点 &#…...
中科大计网学习记录笔记(八):FTP | EMail
前言: 学习视频:中科大郑烇、杨坚全套《计算机网络(自顶向下方法 第7版,James F.Kurose,Keith W.Ross)》课程 该视频是B站非常著名的计网学习视频,但相信很多朋友和我一样在听完前面的部分发现信…...
QPaint绘制自定义坐标轴组件00
最终效果 1.创建一个ui页面,修改背景颜色 鼠标右键->改变样式表->添加颜色->background-color->选择合适的颜色->ok->Apply->ok 重新运行就可以看到widget的背景颜色已经改好 2.创建一个自定义的widget窗口小部件类,class MyChart…...
MATLAB|基于改进二进制粒子群算法的含需求响应机组组合问题研究(含文献和源码)
目录 主要内容 模型研究 1.改进二进制粒子群算法(BPSO) 2.模型分析 结果一览 下载链接 主要内容 该程序复现《A Modified Binary PSO to solve the Thermal Unit Commitment Problem》,主要做的是一个考虑需求响应的机组组合…...
JDBC核心技术
第1章 JDBC概述 第2章 获取数据库连接 第3章 使用PreparedStatement实现CRUD操作 第4章 操作BLOB类型字段 第5章 批量插入 第6章 数据库事务 第7章 DAO及相关实现类 第8章 数据库连接池 第9章 Apache-DBUtils实现CRUD操作图像 小部件...
【天幕系列 02】开源力量:揭示开源软件如何成为技术演进与社会发展的引擎
文章目录 导言01 开源软件如何推动技术创新1.1 开放的创新模式1.2 快速迭代和反馈循环1.3 共享知识和资源1.4 生态系统的建设和扩展1.5 开放标准和互操作性 02 开源软件的商业模式2.1 支持和服务模式2.2 基于订阅的模式2.3 专有附加组件模式2.4 开源软件作为平台模式2.5 双重许…...
“挖矿”系列:细说Python、conda 和 pip 之间的关系
继续挖矿,挖“金矿”! 1. Python、conda 和 pip(挖“金矿”工具) Python、conda 和 pip 是在现代数据科学和软件开发中常用的工具,它们各自有不同的作用,但相互之间存在密切的关系: Python&…...
【自然语言处理】实验3,文本情感分析
清华大学驭风计划课程链接 学堂在线 - 精品在线课程学习平台 (xuetangx.com) 代码和报告均为本人自己实现(实验满分),只展示主要任务实验结果,如果需要详细的实验报告或者代码可以私聊博主 有任何疑问或者问题,也欢…...
2.12日学习打卡----初学RocketMQ(三)
2.12日学习打卡 目录: 2.12日学习打卡一. RocketMQ高级特性(续)消息重试延迟消息消息查询 二.RocketMQ应用实战生产端发送同步消息发送异步消息单向发送消息顺序发送消息消费顺序消息全局顺序消息延迟消息事务消息消息查询 一. RocketMQ高级特…...
<网络安全>《35 网络攻防专业课<第一课 - 网络攻防准备>》
1 主要内容 认识黑客 认识端口 常见术语与命令 网络攻击流程 VMWare虚拟环境靶机搭建 2 认识黑客 2.1 白帽、灰帽和黑帽黑客 白帽黑客是指有能力破坏电脑安全但不具恶意目的黑客。 灰帽黑客是指对于伦理和法律态度不明的黑客。 黑帽黑客经常用于区别于一般(正面…...
【实战】一、Jest 前端自动化测试框架基础入门(一) —— 前端要学的测试课 从Jest入门到TDD BDD双实战(一)
文章目录 一、前端要学的测试课1.前端要学的测试2.前端工程化的一部分3.前端自动化测试的例子4.前端为什么需要自动化测试?5.课程涵盖内容6.前置技能7.学习收获 二、Jest 前端自动化测试框架基础入门1. 自动化测试背景及原理前端自动化测试产生的背景及原理 2.前端自…...
蓝桥杯Java组备赛(二)
题目1 import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);int n sc.nextInt();int max Integer.MIN_VALUE;int min Integer.MAX_VALUE;double sum 0;for(int i0;i<n;i) {int x sc.nextInt()…...
人力资源智能化管理项目(day10:首页开发以及上线部署)
学习源码可以看我的个人前端学习笔记 (github.com):qdxzw/humanResourceIntelligentManagementProject 首页-基本结构和数字滚动 安装插件 npm i vue-count-to <template><div class"dashboard"><div class"container"><!-- 左侧内…...
Conda管理Python不同版本教程
Conda管理Python不同版本教程 目录 0.前提 1.conda常用命令 2.conda设置国内源(以添加清华源为例,阿里云源同样) 3.conda管理python库 4.其它 不太推荐 pyenv管理Python不同版本教程(本人另一篇博客,姊妹篇&…...
free pascal:fpwebview 组件通过 JSBridge 调用本机TTS
从 https://github.com/PierceNg/fpwebview 下载 fpwebview-master.zip 简单易用。 先请看 \fpwebview-master\README.md cd \lazarus\projects\fpwebview-master\demo\js_bidir 学习 js_bidir.lpr ,编写 js_bind_speak.lpr 如下,通过 JSBridge 调用本…...
数据结构——单链表专题
目录 1. 链表的概念及结构2. 实现单链表初始化尾插头插尾删头删查找在指定位置之前插入数据在指定位置之后插入数据删除指定位之前的节点删除指定位置之后pos节点销毁链表 3. 完整代码test.cSList.h 4. 链表的分类 1. 链表的概念及结构 在顺序表中存在一定的问题: …...
Linux:开源世界的王者
在科技世界中,Linux犹如一位低调的王者,统治着开源世界的半壁江山。对于许多技术爱好者、系统管理员和开发者来说,Linux不仅仅是一个操作系统,更是一种信仰、一种哲学。 一、开源的魅力 Linux的最大魅力在于其开源性质。与封闭的…...
⭐北邮复试刷题103. 二叉树的锯齿形层序遍历 (力扣每日一题)
103. 二叉树的锯齿形层序遍历 给你二叉树的根节点 root ,返回其节点值的 锯齿形层序遍历 。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。 示例 1:输入:…...
文件上传漏洞--Upload-labs--Pass07--点绕过
一、什么是点绕过 在Windows系统中,Windows特性会将文件后缀名后多余的点自动删除,在网页源码中,通常使用 deldot()函数 对点进行去除,若发现网页源代码中没有 deldot() 函数,则可能存在 点绕过漏洞。通过点绕过漏洞&…...
MySQL高级特性篇(1)-JSON数据类型的应用
MySQL是一种常用的关系型数据库管理系统,它提供了多种数据类型,其中包括JSON数据类型。JSON(JavaScript Object Notation)是一种常用的数据交换格式,它以键值对的形式组织数据,并支持嵌套和数组结构。MySQL…...
如何用Qt实现一个无标题栏、半透明、置顶(悬浮)的窗口
在Qt框架中,要实现一个无标题栏、半透明、置顶(悬浮)的窗口,需要一些特定的设置和技巧。废话不多说,下面我将以DrawClient软件为例,介绍一下实现这种效果的四个要点。 要点一:移除标题栏&#…...
ViT: transformer在图像领域的应用
文章目录 1. 概要2. 方法3. 实验3.1 Compare with SOTA3.2 PRE-TRAINING DATA REQUIREMENTS3.3 SCALING STUDY3.4 自监督学习 4. 总结参考 论文: An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale 代码:https://github.com…...
Sora 的工作原理(及其意义)
原文:How Sora Works (And What It Means) 作者: DAN SHIPPER OpenAI 的新型文本到视频模型为电影制作开启了新篇章 DALL-E 提供的插图。 让我们先明确一点,我们不会急急忙忙慌乱。我们不会预测乌托邦或预言灾难。我们要保持冷静并... 你…...
Java学习笔记2024/2/16
知识点 面向对象 题目1(完成) 定义手机类,手机有品牌(brand),价格(price)和颜色(color)三个属性,有打电话call()和sendMessage()两个功能。 请定义出手机类,类中要有空参、有参构造方法,set/get方法。 …...
XLNet做文本分类
import torch from transformers import XLNetTokenizer, XLNetForSequenceClassification from torch.utils.data import DataLoader, TensorDataset # 示例文本数据 texts ["This is a positive example.", "This is a negative example.", "Anot…...
Swift 5.9 新 @Observable 对象在 SwiftUI 使用中的陷阱与解决
概览 在 Swift 5.9 中,苹果为我们带来了全新的可观察框架 Observation,它是观察者开发模式在 Swift 中的一个全新实现。 除了自身本领过硬以外,Observation 框架和 SwiftUI 搭配起来也能相得益彰,事倍功半。不过 Observable 对象…...