当前位置: 首页 > news >正文

Pandas数据可视化详解:大案例解析(第27天)

系列文章目录

  1. Pandas数据可视化
  2. 解决不显示中文和负号问题
  3. matplotlib数据可视化
  4. seaborn数据可视化
  5. pyecharts数据可视化
  6. 优衣库数据分析案例

文章目录

  • 系列文章目录
  • 前言
    • 1. Pandas数据可视化
      • 1.1 案例解析:代码实现
    • 2. 解决不显示中文和负号问题
    • 3. matplotlib数据可视化
      • 1.1 案例解析:代码实现
    • 4. seaborn数据可视化
      • 1.1 案例解析:代码实现
    • 5. pyecharts数据可视化
      • 1.1 案例解析:代码实现
    • 6. 优衣库数据分析案例
      • 1.1 案例解析:代码实现


前言

本文主要通过大案例的方式详解了Pandas数据可视化,matplotlib数据可视化,seaborn数据可视化,pyecharts数据可视化。


提示:以下是本篇文章正文内容,下面案例可供参考

1. Pandas数据可视化

1.1 案例解析:代码实现

pandas的df和s对象绘图, 是通过内置matplotlib模块的pyplot类实现

# 导入模块
import pandas as pd
import matplotlib.pyplot as plt 
import seaborn as sns# 可以通过图表快速高效查看出数据之间的规律,潜在一些结论
# 加载数据集
df = sns.load_dataset('anscombe', data_home='./data/seaborn-data/')
df
# 查看每份子集中x和y列的统计描述信息
df.groupby('dataset').describe()
# 获取四份子集数据
df1 = df.query('dataset=="I"')
df2 = df.query('dataset=="II"')
df3 = df.query('dataset=="III"')
df4 = df.query('dataset=="IV"')
# 查建画布
# figsize设置图表的大小, 宽高
fig = plt.figure(figsize=(16, 8))
# 设置画布的标题
fig.suptitle('Anscombe Data')
# 创建四个子图
# 2,2 -> 两行两列,四个图
# 1,2,3,4 -> 每个子图所在的位置
axes1 = fig.add_subplot(2,2,1)
axes2 = fig.add_subplot(2,2,2)
axes3 = fig.add_subplot(2,2,3)
axes4 = fig.add_subplot(2,2,4)
# 绘制图形
axes1.plot(df1['x'], df1['y'], 'o')
axes2.plot(df2['x'], df2['y'], 'o')
axes3.plot(df3['x'], df3['y'], 'o')
axes4.plot(df4['x'], df4['y'], 'o')
# 给每个子图添加标题
axes1.set_title('dataset_1')
axes2.set_title('dataset_2')
axes3.set_title('dataset_3')
axes4.set_title('dataset_4')
plt.show()# pandas绘图
# df对象绘图
# 图形的x轴是df的行索引值
# 图形的y轴是每个数值列的值
# 当前df1有两列数值列, 绘制出两条折线
# 默认绘制折线图
df1.plot(kind='line')
plt.show()
# 柱状图
df1.plot(kind='bar')
# s对象绘图
# 图形x轴是s对象的索引值
# 图形y轴是s对象的值
df1['x'].plot()

2. 解决不显示中文和负号问题

  • 将 simhei.ttf 字体文件放到 /export/server/anaconda3/lib/python3.8/site-packages/matplotlib/mpl-data/fonts/ttf 目录下

    在这里插入图片描述

    在这里插入图片描述

    • 如何查看matplotlibrc文件所在位置

    • ttf目录是在 mpl-data/fonts

      import matplotlib
      matplotlib.matplotlib_fname()
      

      !在这里插入图片描述

  • 在 matplotlibrc 文件中增加以下内容

    font.family			 : sans-serif
    font.sans-serif		 : SimHei
    axes.unicode_minus   : False
    

    在这里插入图片描述

  • 删除缓存文件

    cd /root/.cache
    rm -rf matplotlib
    
  • 重启jupyter notebook

3. matplotlib数据可视化

1.1 案例解析:代码实现

# 绘制折线图, 默认图表 -> 两个变量之间的关系
# 不指定x轴和y轴值, x轴是使用行索引值, y中是数值列值
# df1.plot()
# df1.plot.line()
# df1.plot(kind='line')
# 指定图表的x轴值和y轴值
df1.plot(x='x', y='y')
plt.show()# 绘制柱状图  展示不同类别的信息情况
df1.plot.bar()
# 绘制堆积柱状图
df1.plot(kind='bar', stacked=True)
df1.plot.bar(x='x',y='y')
plt.show()# 水平条形图 -> 柱状图进行旋转
df1.plot.barh()
# 水平堆积条形图
df1.plot.barh(stacked=True, figsize=(16, 8), grid=True)
plt.show()# 绘制饼图 -> 查看不同类型的占比情况
# autopct:添加百分比标签
# radius:圆直径大小,最大1
df1.plot.pie(y='y', autopct='%.2f%%', radius=0.9, figsize=(16,8))
plt.show()# 散点图 -> 查看数据分布情况
# grid:添加网格线
df1.plot(kind='scatter',x='x',y='y', grid=True)
plt.show()# 气泡图 -> 通过散点图api绘制
# 在散点图二维平面上再通过点的大小增加第三个维度
# s:点的大小, 第三个维度
df1.plot.scatter(x='x', y='y', grid=True, s=df1['x']*100)# 面积图 
# 面积堆积图
df1.plot.area()
df1.plot.area(stacked=False)# 箱线图 -> 查看数据的最小值,最大值, 1/4分位值, 中位值, 3/4分位值, 离群值(异常值) 
# 异常值, 数据值普遍分布在 1~100, 有几个值为 1w, 2w, 这些值就是离群值
df1.boxplot()# 直方图 -> 统计不同组数据出现的次数, y轴次数
# bins=10:默认分成10组
df1.plot.hist()
plt.show()
df1['x'].plot.hist()
plt.show()# 蜂巢图 ->了解
# gridsize=12设定蜂箱格子的大小,数字越小格子越大
df1.plot.hexbin(x='x', y='y', gridsize=12)
plt.show()data = pd.read_csv('data/LJdata.csv')
data.head()
# 不同朝向的房源数量柱状图
temp_s = data.groupby(by='朝向')['区域'].count()
temp_s
temp_s.plot.bar(figsize=(16,8))# 前五朝向房源数量的饼图
sort_s = temp_s.sort_values(ascending=False).head()
sort_s.plot.pie(autopct='%.2f%%', radius=0.9, figsize=(12,6))
plt.show()

4. seaborn数据可视化

1.1 案例解析:代码实现

# 加载数据
tips_df = sns.load_dataset('tips', data_home='./data/seaborn-data')
tips_df# 散点图
fig = plt.figure(figsize=(16,8))
sns.scatterplot(data=tips_df, x='total_bill', y='tip', hue='sex', style='smoker', size='size')
plt.show()# 关系散点图
sns.relplot(data=tips_df, x='total_bill', y='tip') # 默认 kind='scatter'
sns.relplot(data=tips_df, x='total_bill', y='tip', kind='line')
plt.show()# 分类散点图
sns.stripplot(data=tips_df, x='time', y='total_bill')
# 不同日期用餐时间的分类散点图
sns.stripplot(data=tips_df, x='time', y='total_bill', jitter=True, dodge=True, hue='day')# 在同一个代码块中绘制多个图形, 借助matplotlib包
f = plt.figure()
axes1 = f.add_subplot(2,1,1)
axes2 = f.add_subplot(2,1,2)
# 按照x属性所对应的类别分别展示y属性的值,适用于分类数据
# 不同饭点的账单总金额的散点图
sns.stripplot(data=tips_df, x='time', y='total_bill', ax=axes1)
# hue通用参数按颜色划分
# jitter=True 当数据点重合较多时,尽量分散的展示数据点
# dodge=True 拆分分类
sns.stripplot(data=tips_df, x='time', y='total_bill', jitter=True, dodge=True, hue='day', ax=axes2)
plt.show()# 小提琴图
# 下图分别描述午餐账单、晚餐账单的最大值、最小值、三个四分位数,以及所有账单金额出现的次数(频率)
sns.violinplot(data=tips_df, x='time', y='total_bill')
plt.show()# 箱线图 下图分别描述午餐账单、晚餐账单的最大值、最小值、三个四分位数,以及所有账单金额出现的次数(频率)
sns.boxplot(data=tips_df, x='time', y='total_bill', hue='day')
plt.show()# 分类柱状图
# 下图中黑色的粗线条展示了数据的分布(误差线), 线条越短, 数据分布越均匀
# 下图中每个柱的顶点就是该分类y指定列的平均值 estimator
sns.barplot(data=tips_df, x='day', y='total_bill', estimator=max)
plt.show()# 分类计数图
# 按x指定的列值分组统计出现次数
# y轴就是出现的次数
sns.countplot(data=tips_df, x='time')
plt.show()# 矩阵热力图 -> 对df数据样式有要求, 通过透视表转换
# 男女在午餐晚餐的平均消费
new_df = tips_df.pivot_table(index='sex', columns='time', values='total_bill', aggfunc='mean')
print(new_df)
# 输出为热力图:男性在晚餐花费最多
sns.heatmap(data=new_df)
plt.show()# 成对关系图
sns.pairplot(tips_df)
#sns.pairplot(df) # 全部数值列进行两两组合
#sns.pairplot(df, vars=['列名1', '列名2']) # 指定要组合展示的列名
plt.show()
# 自行调整成对关系图的绘图图形
pair_grid = sns.PairGrid(tips_df)
# 中间轴线上的图设为kdeplot
pair_grid.map_diag(sns.kdeplot) 
# 右上设为lineplot
pair_grid.map_upper(sns.lineplot) 
# 左下设为scatterplot
pair_grid.map_lower(sns.scatterplot) 
plt.show()

5. pyecharts数据可视化

1.1 案例解析:代码实现

# 可以绘制酷炫的图形
# 绘图套路 -> 参考官方示例代码进行修改即可# 绘制2019年不同国家GDP值的词云图
# 准备要绘制词云图的数据 -> [(国家1, gdp值), (国家2, gdp值), ...]
data = pd.read_csv('data/1960-2019全球GDP数据.csv', encoding='gbk')
data
# 获取year列为2019的数据子集
data_2019= data.query('year==2019')
data_2019
# 通过zip函数将不同列表对应位置的值保存到元组中
a = [1,2,3]
b = [4,5,6]
list(zip(a, b))
data2 = list(zip(data_2019['country'], data_2019['GDP']))
data2from pyecharts import options as opts  # 配置选项
from pyecharts.charts import WordCloud  # 词云图
c = (WordCloud()# 添加数据.add(series_name="不同国家GDP", data_pair=data2, word_size_range=[6, 66])# 设置全局配置.set_global_opts(title_opts=opts.TitleOpts(title="不同国家GDP的词云图", title_textstyle_opts=opts.TextStyleOpts(font_size=10)),tooltip_opts=opts.TooltipOpts(is_show=True))# 将html格式的文件保存到指定为止
#     .render("basic_wordcloud.html")  
)
c.render_notebook()

6. 优衣库数据分析案例

1.1 案例解析:代码实现

# 导入模块
import pandas as pd# 加载数据集
uniqlo = pd.read_csv('data/uniqlo.csv')
uniqlo.head()
# 查看数据集基本信息
uniqlo.info()
# 查看数值列描述统计指标
uniqlo.describe()
# 查看非数值列描述统计指标
uniqlo.describe(include='object')
# 查看销售金额小于等于0的数据
uniqlo.query('销售金额<=0')
uniqlo[uniqlo['销售金额'] >= 5000]# 统计不同产品销售数量情况
# 统计不同产品的销售总量
# 分组聚合
uniqlo.groupby(by='产品名称')['产品数量'].sum().sort_values(ascending=False)
pd.pivot_table(data=uniqlo, index='产品名称', values='产品数量', aggfunc='sum')
# 不同产品不同城市销售数量
uniqlo.groupby(by=['产品名称', '城市'])[['产品数量']].sum()
pd.pivot_table(data=uniqlo, index='产品名称', columns='城市', values='产品数量', aggfunc='sum', margins=True)
# 不同产品不同城市以及不同销售渠道的销售数量
uniqlo.groupby(by=['产品名称', '城市', '销售渠道'])[['产品数量']].sum()
pd.pivot_table(data=uniqlo, index='产品名称', columns=['城市', '销售渠道'], values='产品数量', aggfunc='sum')# 统计不同销售渠道情况
# 统计不同销售渠道的条目数
uniqlo['销售渠道'].value_counts()
uniqlo.groupby(by='销售渠道')['城市'].count()
uniqlo.groupby(by='销售渠道')['城市'].count().plot(kind='bar')
# 统计不同城市不同销售渠道的条目数
uniqlo.groupby(by=['城市','销售渠道'])[['产品数量']].count()
pd.pivot_table(data=uniqlo, index='城市', columns='销售渠道', values='产品数量', aggfunc='count')
# 绘制sns的分类计数图
import matplotlib.pyplot as plt
import seaborn as sns
plt.figure(figsize=(16,8))
sns.countplot(data=uniqlo,y='城市',hue='销售渠道')
plt.show()
# 统计不同城市不同销售渠道的产品总数
uniqlo.groupby(by=['城市', '销售渠道'])[['产品数量']].sum()
pd.pivot_table(data=uniqlo, index='城市', columns='销售渠道', values='产品数量', aggfunc='sum', margins=True)# 用户消费时间分析
# 不同消费时间的条目数
uniqlo['消费时间'].value_counts()
uniqlo.groupby(by='消费时间')['城市'].count()
# 不同消费时间产品总数
uniqlo.groupby(by='消费时间')['产品数量'].sum()
# 不同城市不同消费时间的产品数量
uniqlo.groupby(by=['消费时间', '城市'])[['产品数量']].sum()
wkd_sales = pd.pivot_table(data=uniqlo,index='消费时间', columns='城市', values='产品数量', aggfunc='sum')
wkd_sales
# 获取第一行数据
wkd_sales.loc['Weekday', :]
wkd_sales.loc['Weekday']
# 统计不同城市不同消费时间日均产品数量
# 在wkd_sales基础上增加两行数据
# 获取一行数据得到s对象, s对象运算操作
wkd_sales.loc['Weekday_avg',:] = wkd_sales.loc['Weekday', :] / 5
wkd_sales.loc['Weekend_avg',:] = wkd_sales.loc['Weekend', :] / 2
wkd_sales# 销售额和成本之间的关系
# 获取多列数据
uniqlo[['销售金额', '单件成本']]
# 计算相关性系数
uniqlo[['销售金额', '单件成本']].corr()
# 销售金额是所有销售产品数量的总金额, 单件成本是一件产品成本
# 需要先计算单件销售金额 = 销售金额 / 产品数量
# 计算相关性需要先过滤掉异常数据
uniqlo2 = uniqlo[uniqlo['销售金额']>0]
uniqlo2
# 添加新的一列 单件销售金额 
uniqlo2['单件销售金额'] = uniqlo2['销售金额'] / uniqlo2['产品数量']
uniqlo2
# 计算单件销售金额和单件成本相关系数
uniqlo2[['单件销售金额', '单件成本']].corr()
# 绘制散点图
sns.scatterplot(data=uniqlo2, x='单件成本', y='单件销售金额')
# 绘制热力图
sns.heatmap(uniqlo2[['单件销售金额', '单件成本']].corr())

所需文件已经上传:第27天

在这里插入图片描述

相关文章:

Pandas数据可视化详解:大案例解析(第27天)

系列文章目录 Pandas数据可视化解决不显示中文和负号问题matplotlib数据可视化seaborn数据可视化pyecharts数据可视化优衣库数据分析案例 文章目录 系列文章目录前言1. Pandas数据可视化1.1 案例解析&#xff1a;代码实现 2. 解决不显示中文和负号问题3. matplotlib数据可视化…...

Redis基础教程(七):redis列表(List)

&#x1f49d;&#x1f49d;&#x1f49d;首先&#xff0c;欢迎各位来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里不仅可以有所收获&#xff0c;同时也能感受到一份轻松欢乐的氛围&#xff0c;祝你生活愉快&#xff01; &#x1f49d;&#x1f49…...

鸿蒙开发:Universal Keystore Kit(密钥管理服务)【生成密钥(C/C++)】

生成密钥(C/C) 以生成ECC密钥为例&#xff0c;生成随机密钥。具体的场景介绍及支持的算法规格。 注意&#xff1a; 密钥别名中禁止包含个人数据等敏感信息。 开发前请熟悉鸿蒙开发指导文档&#xff1a;gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md点击或者复…...

ssm“落雪”动漫网站-计算机毕业设计源码81664

目 录 摘要 1 绪论 1.1 研究背景 1.2 研究意义 1.3论文结构与章节安排 2系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1 数据新增流程 3.2.2 数据删除流程 2.3 系统功能分析 2.3.1 功能性分析 2.3.2 非功能性分析 2.4 系统用例分析 2.5本章小结 3 系统总体设…...

【面试题】Reactor模型

Reactor模型 定义 Reactor模型是一种事件驱动的设计模式&#xff0c;用于处理服务请求。它通过将事件处理逻辑与事件分发机制解耦&#xff0c;实现高性能、可扩展的并发处理。Reactor模型适用于高并发、事件驱动的程序设计&#xff0c;如网络服务器等。 特点 事件驱动&#…...

RedHat9 | kickstart无人值守批量安装

一、知识补充 kickstart Kickstart是一种用于Linux系统安装的自动化工具&#xff0c;它通过一个名为ks.cfg的配置文件来定义Linux安装过程中的各种参数和设置。 kickstart的工作原理 Kickstart的工作原理是通过记录典型的安装过程中所需人工干预填写的各种参数&#xff0c;…...

k8s-第五节-StatefulSet

StatefulSet StatefulSet 是用来管理有状态的应用&#xff0c;例如数据库。 前面我们部署的应用&#xff0c;都是不需要存储数据&#xff0c;不需要记住状态的&#xff0c;可以随意扩充副本&#xff0c;每个副本都是一样的&#xff0c;可替代的。 而像**数据库、Redis **这类…...

ai机器狗

ai机器狗的代码很早就开源了&#xff0c;相当于核心&#xff0c;最难东西美国人公开了&#xff0c;开源了&#xff0c;如果有钱&#xff0c;有足够资源的&#xff0c;造出东西有可能比公开这些核心代码的公司或者组织还好。没有技术含量&#xff0c;技术含量别人都解决了&#…...

数据库关键字执行顺序

在 SQL 中&#xff0c;关键字的执行顺序通常如下&#xff1a; FROM&#xff1a;确定要查询的表或数据源&#xff0c;并执行表之间的连接操作&#xff08;如 INNER JOIN、LEFT JOIN 等&#xff09;。FROM 子句执行顺序为从后往前、从右到左。ON&#xff1a;应用连接条件&#xf…...

Linux 永久挂载磁盘

文章目录 前言一、使用步骤1.命令 总结 前言 一、使用步骤 1.命令 第一步&#xff1a;创建挂载点 sudo mkdir /hhkj 第二步&#xff1a;磁盘挂载到挂载点&#xff08;lsblk、lvdisplay&#xff09; sudo mount /dev/sdb2 /hhkj 或者 sudo mount /dev/centos/home /hhkj 第三…...

windows启动Docker闪退Docker desktop stopped

Windows启动Docker闪退-Docker desktop stopped 电脑上很早就安装有Docker了&#xff0c;但是有一段时间都没有启动了&#xff0c;今天想启动启动不起来了&#xff0c;打开没几秒就闪退&#xff0c;记录一下解决方案。仅供参考 首先&#xff0c;参照其他解决方案&#xff0c;本…...

探索Redis GEOMETRY数据结构:地理空间索引与查询(基于Redis GEO和Java实现附近商户查找功能)

摘要 Redis是一个高性能的键值存储系统&#xff0c;广泛应用于缓存、消息队列、排行榜等场景。本文将介绍Redis中一个假设的GEOMETRY数据结构&#xff0c;用于高效地存储和查询地理空间数据。 1. Redis地理空间数据结构概述 地理空间数据结构允许用户存储地理位置信息&#…...

DP学习——策略模式

学而时习之&#xff0c;温故而知新。 敌人出招&#xff08;使用场景&#xff09; 业务中需要多个算法可替换&#xff0c;而不能重构代码时&#xff0c;怎么办&#xff1f;或者一个对象在运行中要根据业务切换不同的模式或者采用不同的算法&#xff0c;怎么办&#xff1f; 到…...

0701_ARM5

练习&#xff1a;使用usart4 main.c #include "uart4.h"int main() {// 初始化 UART4hal_uart4_init();while (1) {// 发送一个字符串//hal_put_char( hal_get_char());hal_put_string(hal_get_string());}return 0; } usart4.c #include "uart4.h"//**…...

Python用户宝典:了解并实现遗传算法

遗传算法是一种基于自然选择的技术&#xff0c;用于解决复杂问题。由于问题很复杂&#xff0c;遗传算法&#xff08;而不是其他方法&#xff09;被用来得出解决问题的合理方案。本文介绍遗传算法的基础知识以及如何用Python来实现。 遗传算法的要素 适应度函数 适应度函数衡…...

如何使用深度学习进行实时目标检测:速度与精度的双重挑战

如何使用深度学习进行实时目标检测&#xff1a;速度与精度的双重挑战 目标检测作为计算机视觉领域的核心任务之一&#xff0c;其目的是在图像或视频中识别和定位感兴趣的对象。随着深度学习技术的发展&#xff0c;基于深度学习的目标检测算法在实时性、准确性方面取得了显著进…...

创新引领,构筑产业新高地

在数字经济的浪潮中&#xff0c;成都树莓集团以创新驱动为核心&#xff0c;通过整合行业资源、优化服务、培养数字产业人才等措施&#xff0c;致力于打造产业高地&#xff0c;推动地方经济的高质量发展。 一、创新驱动&#xff0c;引领产业发展 1、引入新技术、新模式&#xf…...

npm,yarn清楚缓存

1.运行以下命令来清理npm缓存&#xff1a; npm cache clean --force或者运行以下命令清理Yarn缓存&#xff1a; yarn cache clean2.删除 node_modules 和锁文件&#xff1a; 删除 node_modules 目录和 package-lock.json 或 yarn.lock 文件&#xff0c;然后重新安装依赖 rm …...

httpclient访问https请求报错处理

C#通过httpclient调用https请求时&#xff0c;报错 错误信息为&#xff1a;The remote certificate is invalid according to the validation procedure 该错误是由于使用httpclient访问不合法的https站点导致出现的异常。 处理代码如下 public static string HttpPostWithT…...

ffmpeg + opencv 把摄像头画面保存为mp4文件(Ubuntu24.04)

参考链接 ffmpeg opencv 把摄像头画面保存为mp4文件_ffmpeg转化摄像头mp4-CSDN博客 调试环境 Ubuntu24.04 ffmpeg 6.1.1 opencv 4.6 g 13.2.0 C源码 #include <iostream> #include <sys/time.h> #include <string>#ifdef __cplusplus extern "…...

Fastapi 项目第二天首次访问时数据库连接报错问题Can‘t connect to MySQL server

问题描述 Fastapi 项目使用 sqlalchemy 连接的mysql 数据库&#xff0c;每次第二天首次访问数据库相关操作&#xff0c;都会报错&#xff1a;sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2003, “Can’t connect to MySQL server on ‘x.x.x.x’ ([Err…...

尚硅谷k8s 2

p54-56 k8s核心实战 service服务发现 Service:将一组 Pods 公开为网络服务的抽象方法。 #暴露Deploy,暴露deploy会出现在svc kubectl expose deployment my-dep --port8000 --target-port80#使用标签检索Pod kubectl get pod -l appmy-depapiVersion: v1 kind: Service metad…...

机器学习---线性回归

1、线性回归 例如&#xff1a;对于一个房子的价格&#xff0c;其影响因素有很多&#xff0c;例如房子的面积、房子的卧室数量、房子的卫生间数量等等都会影响房子的价格。这些影响因子不妨用 x i x_{i} xi​表示&#xff0c;那么房价 y y y可以用如下公式表示&#xff1a; y …...

字符串去重、集合遍历 题目

题目 JAVA38 字符串去重描述输入描述&#xff1a;输出描述&#xff1a; 示例:分析&#xff1a;代码&#xff1a;大佬代码&#xff1a; JAVA39 集合遍历描述输入描述&#xff1a;输出描述&#xff1a; 示例:分析&#xff1a;代码&#xff1a; JAVA38 字符串去重 描述 从键盘获取…...

Hook 实现 Windows 系统热键屏蔽(二)

目录 前言 一、介绍用户账户控制&#xff08;UAC&#xff09; 1.1 什么是 UAC &#xff1f; 2.2 UAC 运行机制的概述 2.3 分析 UAC 提权参数 二、 NdrAsyncServerCall 函数的分析 2.1 函数声明的解析 2.2 对 Winlogon 的逆向 2.3 对 rpcrt4 的静态分析 2.4 对 rpcrt4…...

SQL窗口函数详解

详细说明在sql中窗口函数是什么&#xff0c;为什么需要窗口函数&#xff0c;有普通的聚合函数了那窗口函数的意义在哪&#xff0c;窗口函数的执行逻辑是什么&#xff0c;over中的字句是如何使用和理解的&#xff08;是不是句句戳到你的痛点&#xff0c;哼哼&#xff5e;&#x…...

如何用Java写一个整理Java方法调用关系网络的程序

大家好&#xff0c;我是猿码叔叔&#xff0c;一位 Java 语言工作者&#xff0c;也是一位算法学习刚入门的小学生。很久没有为大家带来干货了。 最近遇到了一个问题&#xff0c;大致是这样的&#xff1a;如果给你一个 java 方法&#xff0c;如何找到有哪些菜单在使用。我的第一想…...

基于STM32设计的管道有害气体检测装置(ESP8266局域网)176

基于STM32设计的管道有害气体检测装置(176) 文章目录 一、前言1.1 项目介绍【1】项目功能介绍【2】项目硬件模块组成【3】ESP8266模块配置【4】上位机开发思路【5】项目模块划分【6】LCD显示屏界面布局【7】上位机界面布局1.2 项目功能需求1.3 项目开发背景1.4 开发工具的选择1…...

iCloud照片库全指南:云端存储与智能管理

iCloud照片库全指南&#xff1a;云端存储与智能管理 在数字化时代&#xff0c;照片和视频成为了我们生活中不可或缺的一部分。随着手机摄像头质量的提升&#xff0c;我们记录生活点滴的方式也越来越丰富。然而&#xff0c;这也带来了一个问题&#xff1a;如何有效管理和存储日…...

IDEA中使用Maven打包及碰到的问题

1. 项目打包 IDEA中&#xff0c;maven打包的方式有两种&#xff0c;分别是 install 和 package &#xff0c;他们的区别如下&#xff1a; install 方式 install 打包时做了两件事&#xff0c;① 将项目打包成 jar 或者 war&#xff0c;打包结果存放在项目的 target 目录下。…...

TreeMap、HashMap 和 LinkedHashMap 的区别

TreeMap、HashMap 和 LinkedHashMap 的区别 1、HashMap2、LinkedHashMap3、TreeMap4、总结 &#x1f496;The Begin&#x1f496;点点关注&#xff0c;收藏不迷路&#x1f496; 在 Java 中&#xff0c;TreeMap、HashMap 和 LinkedHashMap 是三种常用的集合类&#xff0c;它们在…...

【跟我学K8S】45天入门到熟练详细学习计划

目录 一、什么是K8S 核心功能 架构组件 使用场景 二、入门到熟练的学习计划 第一周&#xff1a;K8s基础和概念 第二周&#xff1a;核心对象和网络 第三周&#xff1a;进阶使用和管理 第四周&#xff1a;CI/CD集成和监控 第五周&#xff1a;实战模拟和案例分析 第六周…...

ubuntu下载Nginx

一、Nginx下载安装&#xff08;Ubuntu系统&#xff09; 1.nginx下载 sudo apt-get install nginx2.nginx启动 启动命令 sudo nginx重新编译(每次更改完nginx配置文件后运行&#xff09;&#xff1a; sudo nginx -s reload3.测试nginx是否启动成功 打开浏览器访问本机80端口…...

【区分vue2和vue3下的element UI Dialog 对话框组件,分别详细介绍属性,事件,方法如何使用,并举例】

在 Vue 2 和 Vue 3 中&#xff0c;Element UI&#xff08;针对 Vue 2&#xff09;和 Element Plus&#xff08;针对 Vue 3&#xff09;提供了 Dialog 对话框组件&#xff0c;用于在页面中显示模态对话框。这两个库中的 Dialog 组件在属性、事件和方法的使用上有所相似&#xff…...

docker push 推送镜像到阿里云仓库

1.登陆阿里云 镜像服务&#xff0c;跟着指引操作就行 创建个人实例&#xff0c;创建命名空间、镜像仓库&#xff0c;绑定代码源头 2.将镜像推送到Registry $ docker login --username*** registry.cn-beijing.aliyuncs.com $ docker tag [ImageId] registry.cn-beijing.aliy…...

伯克利、斯坦福和CMU面向具身智能端到端操作联合发布开源通用机器人Policy,可支持多种机器人执行多种任务

不同于LLM或者MLLM那样用于上百亿甚至上千亿参数量的大模型&#xff0c;具身智能端到端大模型并不追求参数规模上的大&#xff0c;而是指其能吸收大量的数据&#xff0c;执行多种任务&#xff0c;并能具备一定的泛化能力&#xff0c;如笔者前博客里的RT1。目前该领域一个前沿工…...

昇思25天学习打卡营第17天(+1)|Diffusion扩散模型

1. 学习内容复盘 本文基于Hugging Face&#xff1a;The Annotated Diffusion Model一文翻译迁移而来&#xff0c;同时参考了由浅入深了解Diffusion Model一文。 本教程在Jupyter Notebook上成功运行。如您下载本文档为Python文件&#xff0c;执行Python文件时&#xff0c;请确…...

【Leetcode笔记】406.根据身高重建队列

文章目录 1. 题目要求2.解题思路 注意3.ACM模式代码 1. 题目要求 2.解题思路 首先&#xff0c;按照每个人的身高属性&#xff08;即people[i][0]&#xff09;来排队&#xff0c;顺序是从大到小降序排列&#xff0c;如果遇到同身高的&#xff0c;按照另一个属性&#xff08;即p…...

Linux 安装pdfjam (PDF文件尺寸调整)

跟Ghostscript搭配使用&#xff0c;这样就可以将不同尺寸的PDF调整到相同尺寸合并了。 在 CentOS 上安装 pdfjam 需要安装 TeX Live&#xff0c;因为 pdfjam 是基于 TeX Live 的。以下是详细的步骤来安装 pdfjam&#xff1a; ### 步骤 1: 安装 EPEL 仓库 首先&#xff0c;安…...

python+playwright 学习-90 and_ 和 or_ 定位

前言 playwright 从v1.34 版本以后支持and_ 和 or_ 定位 XPath 中的and和or xpath 语法中我们常用的有text()、contains() 、ends_with()、starts_with() //*[text()="文本"] //*[contains(@id, "xx")] //...

亲子时光里的打脸高手,贾乃亮与甜馨的父爱如山

贾乃亮这波操作&#xff0c;简直是“实力打脸”界的MVP啊&#xff01; 7月5号&#xff0c;他一甩手&#xff0c;甩出张合照&#xff0c; 瞬间让多少猜测纷飞的小伙伴直呼&#xff1a;“脸疼不&#xff1f;”带着咱家小甜心甜馨&#xff0c; 回了哈尔滨老家&#xff0c;这趟亲…...

MySQL篇-SQL优化实战

SQL优化措施 通过我们日常开发的经验可以整理出以下高效SQL的守则 表主键使用自增长bigint加适当的表索引&#xff0c;需要强关联字段建表时就加好索引&#xff0c;常见的有更新时间&#xff0c;单号等字段减少子查询&#xff0c;能用表关联的方式就不用子查询&#xff0c;可…...

【MySQL备份】Percona XtraBackup总结篇

目录 1.前言 2.问题总结 2.1.为什么在恢复备份前需要准备备份 2.1.1. 保证数据一致性 2.1.2. 完成崩溃恢复过程 2.1.3. 解决非锁定备份的特殊需求 2.1.4. 支持增量和差异备份 2.1.5. 优化恢复性能 2.2.Percona XtraBackup的工作原理 3.注意事项 1.前言 在历经了详尽…...

【Git 】规范 Git 提交信息的工具 Commitizen

Commitizen是一个用于规范Git提交信息的工具&#xff0c;它旨在帮助开发者生成符合一定规范和风格的提交信息&#xff0c;从而提高代码维护的效率&#xff0c;便于追踪和定位问题。以下是对Commitizen的详细介绍。 1、Commitizen的作用与优势 规范提交信息&#xff1a;通过提供…...

ABB PPC902AE1013BHE010751R0101控制器 处理器 模块

ABB PPC902AE1013BHE010751R0101 该模块是用于自动化和控制系统的高性能可编程控制器。它旨在与其他自动化和控制设备一起使用&#xff0c;以提供完整的系统解决方案 是一种数字输入/输出模块&#xff0c;提供了高水平的性能和可靠性。它专为苛刻的工业应用而设计&#xff0c…...

大模型AIGC转行记录(一)

自从22年11月chat gpt上线以来&#xff0c;这一轮的技术浪潮便变得不可收拾。我记得那年9月份先是在技术圈内讨论&#xff0c;然后迅速地&#xff0c;全社会在讨论&#xff0c;各个科技巨头、金融机构、政府部门快速跟进。 软件开发行业过去与现状 我19年决定转码的时候&…...

element-ui Tree之懒加载叶子节点强制设置父级半选效果

效果&#xff1a; 前言&#xff1a; 我们是先只展示一级的&#xff0c;二级的数据是通过点击之后通过服务器获取数据&#xff0c;并不是全量数据直接一起返回回来的。 问题&#xff1a; 当你设置了默认选中的子节点&#xff0c;但是由于刚进入页面此时tree中数据暂是没有这个…...

Java项目:基于SSM框架实现的高校共享单车管理系统分前后台【ssm+B/S架构+源码+数据库+开题报告+任务书+毕业论文】

一、项目简介 本项目是一套基于SSM框架实现的高校共享单车管理系统 包含&#xff1a;项目源码、数据库脚本等&#xff0c;该项目附带全部源码可作为毕设使用。 项目都经过严格调试&#xff0c;eclipse或者idea 确保可以运行&#xff01; 该系统功能完善、界面美观、操作简单、…...

【Android】自定义换肤框架02之自定义AssetManager和Resource

ResourceId是如何变成对应Resource的 在上一章中&#xff0c;我们已经讲过&#xff0c;apk中有个资源索引文件 其中保存了每个资源对应的id&#xff0c;name&#xff0c;type&#xff0c;path 资源文件的解析&#xff0c;主要涉及两个类&#xff0c;AssetManager和Resource …...

熵权法、熵值法、熵权TOPSIS三种方法的实用场景及优劣比较

在统计分析与决策分析中,熵权法、熵值法和熵权TOPSIS是三种常用的基于信息熵理论的方法。这些方法在处理多属性或多指标决策问题时,能够客观地反映数据的内在特性和各指标的相对重要性,为科学决策提供了有力支持。 熵权法 实用场景 熵权法是一种基于信息熵的客观赋权方法…...