使用Python生成多种不同类型的Excel图表

目录

一、使用工具

二、生成Excel图表的基本步骤

三、使用Python创建Excel图表

  • 柱形图
  • 饼图
  • 折线图
  • 条形图
  • 散点图
  • 面积图
  • 组合图
  • 瀑布图
  • 树形图
  • 箱线图
  • 旭日图
  • 漏斗图
  • 直方图
  • 不使用工作表数据生成图表

四、总结


Excel图表是数据可视化的重要工具,它通过直观的方式将数字信息展示出来,使数据分析和决策更加高效。使用图表展示数据不仅能够提升数据的可读性,还能让复杂的信息一目了然,非常适用于财务分析、市场报告以及日常数据汇报等场景。这篇文章将介绍如何使用Python在Excel中生成各种不同类型的图表

一、使用工具

在Python中,使用Spire.XLS可以轻松生成各种Excel图表,它支持超过80种不同的图表类型,包括经典的柱形图、折线图、饼图等,以及Excel 2016及之后新加的图表,如瀑布图、树形图、箱线图、直方图、漏斗图和旭日图。

安装Spire.XLS for Python

在开始使用之前,确保已安装Spire.XLS for Python,可以通过以下命令从PyPI安装:

pip install Spire.Xls

二、生成Excel图表的基本步骤

生成Excel图表的基本步骤包括:

  • 创建一个Excel工作簿或加载现有工作簿。
  • 在工作表中填充数据或获取现有数据区域。
  • 根据数据创建所需类型的图表。
  • 设置图表的格式和外观。
  • 保存Excel文件。

三、使用Python创建Excel图表

以下是如何使用Spire.XLS for Python生成不同图表的例子。

柱形图

柱形图是最常见的图表之一,主要用于显示不同类别之间的数据对比。柱形图可以进一步细分为簇状柱形图、堆积柱形图、百分比堆积柱形图等,这里只展示如何创建簇状柱形图:

from spire.xls.common import *
from spire.xls import *# 创建Workbook对象
workbook = Workbook()
# 获取第一个工作表并设置其名称
sheet = workbook.Worksheets[0]
sheet.Name = "柱形图"# 向工作表的特定单元格添加数据
sheet.Range["A1"].Value = "产品"
sheet.Range["A2"].Value = "袜子"
sheet.Range["A3"].Value = "短背带裤"
sheet.Range["A4"].Value = "短裤"
sheet.Range["A5"].Value = "紧身裤"
sheet.Range["B1"].Value = "七月"
sheet.Range["B2"].NumberValue = 6000
sheet.Range["B3"].NumberValue = 8000
sheet.Range["B4"].NumberValue = 9000
sheet.Range["B5"].NumberValue = 8500
sheet.Range["C1"].Value = "八月"
sheet.Range["C2"].NumberValue = 3000
sheet.Range["C3"].NumberValue = 2000
sheet.Range["C4"].NumberValue = 2300
sheet.Range["C5"].NumberValue = 4200# 设置单元格样式
sheet.Range["A1:C1"].RowHeight = 15
sheet.Range["A1:C1"].Style.Color = Color.get_DarkGray()
sheet.Range["A1:C1"].Style.Font.Color = Color.get_White()
sheet.Range["A1:C1"].Style.VerticalAlignment = VerticalAlignType.Center
sheet.Range["A1:C1"].Style.HorizontalAlignment = HorizontalAlignType.Center
sheet.Range["B2:C5"].Style.NumberFormat = "\"$\"#,##0"# 向工作表添加簇状柱形图
chart = sheet.Charts.Add(ExcelChartType.ColumnClustered)
# 设置图表数据范围
chart.DataRange = sheet.Range["A1:C5"]
chart.SeriesDataFromRange = False# 设置图表位置
chart.LeftColumn = 5
chart.TopRow = 1
chart.RightColumn = 14
chart.BottomRow = 24# 设置图表标题
chart.ChartTitle = "服装类别月销售额"
chart.ChartTitleArea.IsBold = True
chart.ChartTitleArea.Size = 12# 设置图表轴
chart.PrimaryCategoryAxis.Title = "产品"
chart.PrimaryCategoryAxis.Font.IsBold = True
chart.PrimaryCategoryAxis.TitleArea.IsBold = True
chart.PrimaryValueAxis.Title = "销售额"
chart.PrimaryValueAxis.HasMajorGridLines = False
chart.PrimaryValueAxis.MinValue = 1000
chart.PrimaryValueAxis.TitleArea.IsBold = True
chart.PrimaryValueAxis.TitleArea.TextRotationAngle = 90# 设置系列颜色、重叠、间隔宽度和数据标签
for cs in chart.Series:cs.Format.Options.IsVaryColor = Truecs.Format.Options.Overlap = -50cs.Format.Options.GapWidth = 350cs.DataPoints.DefaultDataPoint.DataLabels.HasValue = True# 设置图例位置
chart.Legend.Position = LegendPositionType.Top# 保存结果文件
workbook.SaveToFile("簇状柱形图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Python生成Excel柱形图

饼图

饼图通常用于显示每个数据类别的比例,例如每个地区的人口百分比或每种类型的销售额的百分比等。下面是创建饼图的代码:

from spire.xls.common import *
from spire.xls import *# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("饼图模版.xlsx")# 获取第一个工作表并设置其名称
sheet = workbook.Worksheets[0]
sheet.Name = "饼图"# 向工作表添加饼图
chart = sheet.Charts.Add(ExcelChartType.Pie)
# 设置图表的数据范围
chart.DataRange = sheet.Range["A1:D2"]
chart.SeriesDataFromRange = False# 设置图表位置
chart.LeftColumn = 6
chart.TopRow = 1
chart.RightColumn = 12
chart.BottomRow = 17# 设置图表标题
chart.ChartTitle = "2017年野生动物数量"
chart.ChartTitleArea.IsBold = True
chart.ChartTitleArea.Size = 12# 设置图表系列的类别标签、值和数据标签
cs = chart.Series[0]
cs.CategoryLabels = sheet.Range["B1:D1"]
cs.Values = sheet.Range["B2:D2"]
cs.DataPoints.DefaultDataPoint.DataLabels.HasPercentage = True# 隐藏绘图区填充
chart.PlotArea.Fill.Visible = False# 设置图例的位置
chart.Legend.Position = LegendPositionType.Bottom# 保存结果文件
workbook.SaveToFile("饼图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Python生成Excel饼图

折线图

折线图可以显示一段时间内数据的连续变化,适用于显示相等时间间隔(如月、季度或财年)下数据的趋势。折线图也可以进一步细分为堆积折线图、百分比堆积折线图等‌。下面是创建折线图的代码:

from spire.xls.common import *
from spire.xls import *# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("折线图模版.xlsx")# 获取第一个工作表并设置其名称
sheet = workbook.Worksheets[0]
sheet.Name = "折线图"# 向工作表添加折线图
chart = sheet.Charts.Add(ExcelChartType.Line)
# 设置图表的数据范围
chart.DataRange = sheet.Range["A1:E5"]
chart.SeriesDataFromRange = False# 设置图表位置
chart.LeftColumn = 1
chart.TopRow = 7
chart.RightColumn = 11
chart.BottomRow = 30# 设置图表标题
chart.ChartTitle = "各国月度销售额"
chart.ChartTitleArea.IsBold = True
chart.ChartTitleArea.Size = 12# 设置图表坐标轴
chart.PrimaryCategoryAxis.Title = "月份"
chart.PrimaryCategoryAxis.Font.IsBold = True
chart.PrimaryCategoryAxis.TitleArea.IsBold = True
chart.PrimaryValueAxis.Title = "销售额"
chart.PrimaryValueAxis.HasMajorGridLines = False
chart.PrimaryValueAxis.TitleArea.TextRotationAngle = -90
chart.PrimaryValueAxis.MinValue = 1000
chart.PrimaryValueAxis.TitleArea.IsBold = True# 设置图表系列的格式和数据标签
for cs in chart.Series:cs.Format.Options.IsVaryColor = Truecs.DataPoints.DefaultDataPoint.DataLabels.HasValue = True# 隐藏绘图区填充
chart.PlotArea.Fill.Visible = False# 设置图例的位置
chart.Legend.Position = LegendPositionType.Bottom# 保存结果文件
workbook.SaveToFile("折线图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Python生成Excel折线图

条形图

条形图与柱形图类似,通常用于比较不同类别的数值。不同的是条形图的系列名称在y轴上,值在x轴上。下面是创建条形图的代码:

from spire.xls import *
from spire.xls.common import *# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("条形图模版.xlsx")# 获取第一个工作表并设置其名称
sheet = workbook.Worksheets[0]
sheet.Name = "条形图"# 向工作表添加一个簇状条形图
chart = sheet.Charts.Add(ExcelChartType.BarClustered)
# 设置图表的数据范围
chart.DataRange = sheet.Range["A1:E5"]
chart.SeriesDataFromRange = False# 设置图表位置
chart.LeftColumn = 7
chart.TopRow = 1
chart.RightColumn = 14
chart.BottomRow = 28# 设置图表坐标轴
chart.PrimaryCategoryAxis.Title = "国家"
chart.PrimaryCategoryAxis.Font.IsBold = True
chart.PrimaryCategoryAxis.TitleArea.IsBold = True
chart.PrimaryCategoryAxis.TitleArea.TextRotationAngle = -90
chart.PrimaryValueAxis.Title = "销售额(美元)"
chart.PrimaryValueAxis.HasMajorGridLines = False
chart.PrimaryValueAxis.MinValue = 1000
chart.PrimaryValueAxis.TitleArea.IsBold = True# 设置数据标签
for cs in chart.Series:cs.Format.Options.IsVaryColor = Truecs.DataPoints.DefaultDataPoint.DataLabels.HasValue = True# 设置图例的位置
chart.Legend.Position = LegendPositionType.Bottom# 保存结果文件
workbook.SaveToFile("条形图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Python生成Excel条形图

散点图

散点图用于展示两组数据之间的关系,通过点的分布可以判断两变量之间是否存在某种关联。散点图通常用于比较跨类别的聚合数据,提供关键信息,适用于需要比较两组数据之间的关系或模式的情况‌。下面是创建散点图的代码:

from spire.xls import *
from spire.xls.common import *# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("散点图模板.xlsx")# 获取第一个工作表并设置其名称
sheet = workbook.Worksheets[0]
sheet.Name = "散点图"# 向工作表添加一个散点图
chart = sheet.Charts.Add(ExcelChartType.ScatterMarkers)
# 设置图表的数据范围
chart.DataRange = sheet.Range["B2:B6"]
chart.SeriesDataFromRange = False# 设置图表位置
chart.LeftColumn = 4
chart.TopRow = 1
chart.RightColumn = 11
chart.BottomRow = 15# 设置第一个数据系列的类别标签和数值
chart.Series[0].CategoryLabels = sheet.Range["A2:A6"]
chart.Series[0].Values = sheet.Range["B2:B6"]# 设置图表坐标轴
chart.PrimaryCategoryAxis.Title = "广告支出"
chart.PrimaryValueAxis.Title = "售出商品数量"# 保存结果文件
workbook.SaveToFile("散点图.xlsx", FileFormat.Version2016)
workbook.Dispose()

Python生成Excel散点图

面积图

面积图是一种常用的数据可视化图表类型,它通过填充折线图下方与X轴之间的区域来表示数据的变化趋势。面积图与折线图相似,但面积图通过颜色填充来展示数据的累积效果,从而更好地展示数据随时间或类别变化的趋势。下面是创建面积图的代码:

from spire.xls import *
from spire.xls.common import *# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("面积图模板.xlsx")# 获取第一个工作表并设置其名称
sheet = workbook.Worksheets[0]
sheet.Name = "面积图"# 向工作表添加一个堆积面积图
chart = sheet.Charts.Add(ExcelChartType.AreaStacked)
# 设置图表的数据范围
chart.DataRange = sheet.Range["A1:D6"]
chart.SeriesDataFromRange = False# 设置图表位置
chart.LeftColumn = 6
chart.TopRow = 1
chart.RightColumn = 13
chart.BottomRow = 15# 设置图表图例的位置
chart.Legend.Position = LegendPositionType.Bottom# 保存结果文件
workbook.SaveToFile("面积图.xlsx", FileFormat.Version2016)
workbook.Dispose()

Python生成Excel面积图

组合图

组合图表允许用户将不同类型的图表(如条形图、折线图、饼图等)组合在一起,以展示多种数据之间的关系和趋势。下面是创建组合图的代码:

from spire.xls.common import *
from spire.xls import *# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("组合图模板.xlsx")# 获取第一个工作表并设置其名称
sheet = workbook.Worksheets[0]
sheet.Name = "组合图"# 向工作表添加一个组合图表
chart = sheet.Charts.Add(ExcelChartType.CombinationChart)# 设置图表的数据范围
chart.DataRange = sheet.Range["A1:C5"]
chart.SeriesDataFromRange = False# 设置图表位置
chart.LeftColumn = 1
chart.TopRow = 7
chart.RightColumn = 6
chart.BottomRow = 20# 为不同的图表系列设置不同的图表类型
cs1 = chart.Series[0]
cs1.SerieType = ExcelChartType.ColumnClustered
cs2 = chart.Series[1]
cs2.SerieType = ExcelChartType.LineMarkers# 向图表添加次级类别轴
chart.SecondaryCategoryAxis.IsMaxCross = True
cs2.UsePrimaryAxis = False# 保存结果文件
workbook.SaveToFile("组合图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Python生成Excel组合图

瀑布图

瀑布图显示数据增减变化的连续过程,通常用于展示企业财务表现、利润变化等情况。下面是创建瀑布图的代码:

from spire.xls import *
from spire.xls.common import *# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("瀑布图模板.xlsx")# 获取第一个工作表并设置其名称
sheet = workbook.Worksheets[0]
sheet.Name = "瀑布图"# 向工作表添加一个瀑布图
chart = sheet.Charts.Add(ExcelChartType.WaterFall)
# 设置图表的数据范围
chart.DataRange = sheet["A1:B5"]# 设置图表位置
chart.TopRow = 1
chart.BottomRow = 19
chart.LeftColumn = 4
chart.RightColumn = 12# 设置图表标题
chart.ChartTitle = "第四季度"
chart.ChartTitleArea.IsBold = True
chart.ChartTitleArea.Size = 12# 将图表中的特定数据点设为总计
chart.Series[0].DataPoints[2].SetAsTotal = True
chart.Series[0].DataPoints[4].SetAsTotal = True# 显示数据点之间的连接线
chart.Series[0].Format.ShowConnectorLines = True# 设置数据标签和图例选项
chart.Series[0].DataPoints.DefaultDataPoint.DataLabels.HasValue = True
chart.Series[0].DataPoints.DefaultDataPoint.DataLabels.Size = 8
chart.Legend.Position = LegendPositionType.Right# 保存结果文件
workbook.SaveToFile("瀑布图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Python生成Excel瀑布图

树形图

树形图以树状结构展示数据层级关系,便于理解数据的组织结构和比例关系。下面是创建树形图的代码:

from spire.xls import *
from spire.xls.common import *# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("树形图模板.xlsx")# 获取第一个工作表并设置其名称
sheet = workbook.Worksheets[0]
sheet.Name = "树形图"# 向工作表添加一个树状图
chart = sheet.Charts.Add(ExcelChartType.TreeMap)
# 设置图表的数据范围
chart.DataRange = sheet["A1:C18"]# 设置图表位置
chart.TopRow = 1
chart.BottomRow = 19
chart.LeftColumn = 5
chart.RightColumn = 13# 设置图表标题
chart.ChartTitle = "产品销售额"# 设置标签选项
chart.Series[0].DataFormat.TreeMapLabelOption = ExcelTreeMapLabelOption.Banner# 设置数据标签大小
chart.Series[0].DataPoints.DefaultDataPoint.DataLabels.Size = 8# 保存结果文件
workbook.SaveToFile("树形图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Python生成Excel树形图

箱线图

箱线图显示数据的分布情况,包括中位数、四分位数等统计指标,适用于分析数据波动。下面是创建箱线图的代码:

from spire.xls import *
from spire.xls.common import *# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("箱线图模板.xlsx")# 获取第一个工作表并设置其名称
sheet = workbook.Worksheets[0]
sheet.Name = "箱线图"# 向工作表添加一个箱线图
chart = sheet.Charts.Add(ExcelChartType.BoxAndWhisker)
# 设置图表的数据范围
chart.DataRange = sheet["A1:D17"]# 设置图表位置
chart.TopRow = 1
chart.BottomRow = 19
chart.LeftColumn = 6
chart.RightColumn = 14# 设置图表标题
chart.ChartTitle = "产品年度销售额"# 为图表系列设置数据格式
seriesA = chart.Series[0]
seriesA.DataFormat.ShowInnerPoints = False
seriesA.DataFormat.ShowOutlierPoints = True
seriesA.DataFormat.ShowMeanMarkers = True
seriesA.DataFormat.ShowMeanLine = False
seriesA.DataFormat.QuartileCalculationType = ExcelQuartileCalculation.ExclusiveMedianseriesB = chart.Series[1]
seriesB.DataFormat.ShowInnerPoints = False
seriesB.DataFormat.ShowOutlierPoints = True
seriesB.DataFormat.ShowMeanMarkers = True
seriesB.DataFormat.ShowMeanLine = False
seriesB.DataFormat.QuartileCalculationType = ExcelQuartileCalculation.InclusiveMedianseriesC = chart.Series[2]
seriesC.DataFormat.ShowInnerPoints = False
seriesC.DataFormat.ShowOutlierPoints = True
seriesC.DataFormat.ShowMeanMarkers = True
seriesC.DataFormat.ShowMeanLine = False
seriesC.DataFormat.QuartileCalculationType = ExcelQuartileCalculation.ExclusiveMedian# 保存结果文件
workbook.SaveToFile("箱线图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Python生成Excel箱线图

旭日图

旭日图通过多层圆环表示数据的层级关系,每层圆环表示一个层级,可直观展示数据占比。下面是创建旭日图的代码:

from spire.xls import *
from spire.xls.common import *# 创建一个工作簿对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("旭日图模板.xlsx")# 获取第一个工作表并设置其名称
sheet = workbook.Worksheets[0]
sheet.Name = "旭日图"# 向工作表添加一个旭日图
chart = sheet.Charts.Add(ExcelChartType.SunBurst)
# 设置图表的数据范围
chart.DataRange = sheet["A1:C10"]# 设置图表位置
chart.TopRow = 1
chart.BottomRow = 19
chart.LeftColumn = 5
chart.RightColumn = 13# 设置图表标题
chart.ChartTitle = "产品销售额"# 设置数据标签的大小
chart.Series[0].DataPoints.DefaultDataPoint.DataLabels.Size = 8# 隐藏图表图例
chart.HasLegend = False# 保存结果文件
workbook.SaveToFile("旭日图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Python生成Excel旭日图

漏斗图

漏斗图表示数据在流程中的逐步减少或筛选过程,常用于销售、转化等流程分析。下面是创建漏斗图的代码:

from spire.xls import *
from spire.xls.common import *# 创建Workbook对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("漏斗图模板.xlsx")# 获取第一个工作表并设置其名称
sheet = workbook.Worksheets[0]
sheet.Name = "漏斗图"# 向工作表添加一个漏斗图
chart = sheet.Charts.Add(ExcelChartType.Funnel)
# 设置图表的数据范围
chart.DataRange = sheet["A1:B5"]# 设置图表位置
chart.TopRow = 1
chart.BottomRow = 19
chart.LeftColumn = 4
chart.RightColumn = 12# 设置图表标题
chart.ChartTitle = "客户情况统计"# 设置数据标签
chart.Series[0].DataPoints.DefaultDataPoint.DataLabels.HasValue = True
chart.Series[0].DataPoints.DefaultDataPoint.DataLabels.Size = 8# 设置间距宽度
chart.Series[0].Format.Options.GapWidth = 10# 隐藏图表图例
chart.HasLegend = False# 保存文件
workbook.SaveToFile("漏斗图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Python生成Excel漏斗图

直方图

直方图常用于显示数据的分布情况。它将数据按区间分组,每个区间对应一个条形。条形的高度表示该区间内的数据频数或频率。下面是创建直方图的代码:

from spire.xls import *
from spire.xls.common import *# 创建一个工作簿对象
workbook = Workbook()
# 加载一个Excel文件
workbook.LoadFromFile("直方图模板.xlsx")# 获取第一个工作表并设置其名称
sheet = workbook.Worksheets[0]
sheet.Name = "直方图"# 向工作表添加一个直方图
chart = sheet.Charts.Add(ExcelChartType.Histogram)
# 设置图表的数据范围
chart.DataRange = sheet["A1:B12"]# 设置图表位置
chart.TopRow = 1
chart.BottomRow = 17
chart.LeftColumn = 4
chart.RightColumn = 12# 设置图表标题
chart.ChartTitle = "测试成绩"# 设置箱宽
chart.PrimaryCategoryAxis.BinWidth = 6# 设置间距宽度
chart.Series[0].DataFormat.Options.GapWidth = 6# 设置坐标轴标题
chart.PrimaryValueAxis.Title = "学生人数"
chart.PrimaryCategoryAxis.Title = "成绩"# 隐藏图表图例
chart.HasLegend = False# 保存文件
workbook.SaveToFile("直方图.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

Python生成Excel直方图

不使用工作表数据生成图表

在特定情况下,你可能不想把数据写入工作表然后再生成图表,而是希望直接用外部的自定义数据生成图表。下面是不使用工作表数据创建图表的代码:

from spire.xls import *
from spire.xls.common import *# 创建一个工作簿对象
workbook = Workbook()
# 获取第一个工作表
sheet = workbook.Worksheets[0]# 添加图表
chart = sheet.Charts.Add()
# 设置图表标题
chart.ChartTitle = "自定义数据图表"
# 添加数据系列
series = chart.Series.Add()# 添加数据
series.EnteredDirectlyValues = [Int32(10), Int32(20), Int32(30)]# 保存文件
workbook.SaveToFile("使用自定义数据创建图表.xlsx", ExcelVersion.Version2013)
workbook.Dispose()

Python不使用Excel工作表数据生成图表

四、总结

由于篇幅问题,本文只介绍了十几种图表类型,事实上Spire.XLS for Python基本涵盖了Excel中百分之九十以上的图表类型。如果你需要经常通过Python处理Excel文件并生成图表, Spire.XLS是一个非常有用的工具。

本文完结。

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

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

相关文章

PCIe进阶之TL:First/Last DW Byte Enables Rules Traffic Class Field

1 First/Last DW Byte Enables Rules & Attributes Field 1.1 First/Last DW Byte Enables Rules Byte Enable 包含在 Memory、I/O 和 Configuration Request 中。本文定义了相应的规则。Byte Enable 位于 header 的 byte 7 。对于 TH 字段值为 1 的 Memory Read Request…

【STM32】esp8266通过MQTT连接服务器|订阅发布

1. MQTT协议 该协议为应用层协议,传输层使用的是tcp,MQTT的订阅和发布,就相当于在抖音中你关注了某个领域的博主(订阅),如果有其他人发了作品就会推给你(发布),默认已经安装好了 简…

哈希表、算法

哈希表 hash: 在编程和数据结构中,"hash" 通常指的是哈希函数,它是一种算法,用于将数据(通常是字符 串)映射到一个固定大小的数字(哈希值)。哈希函数在哈希表中尤为重要…

探索图论中的关键算法(Java 实现)

“日出东海落西山 愁也一天 喜也一天 遇事不钻牛角尖” 文章目录 前言文章有误敬请斧正 不胜感恩!||Day031. 最短路径算法Dijkstra算法Java 实现: Bellman-Ford算法Java 实现: 2. 最小生成树算法Prim算法Java 实现: Kruskal算法Ja…

C++速通LeetCode简单第9题-二叉树的最大深度

深度优先算法递归: /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), right(nullptr) {}* TreeNode(int x) : val(x), left(nullptr), right…

Conmi的正确答案——MySQL的层级递归查询(递归公共表表达式,CTE)

数据库:oceanbase-ce 递归sql主体: WITH RECURSIVE country_area_tree AS (-- 非递归部分,初始化查询SELECT id, area_name, parent_id, 0 AS levelFROM country_areaWHERE id 589004044419077UNION ALL-- 递归部分,找到子节点S…

聚类_K均值

import numpy as np import matplotlib.pyplot as plt from sklearn.datasets import make_blobs1.数据预处理 #创建基于高斯分布的样本点, x是点的坐标,y是所属聚类值 x, y make_blobs(n_samples100, centers6, random_state100, cluster_std0.6) # 设置图形尺寸…

2. 变量和指令(omron 机器自动化控制器)——1

机器自动化控制器——第二章 变量和指令 1 2-1 变量一览表MC通用变量轴变量▶ 轴组变量 运动控制指令的输入变量输入变量的有效范围▶ 枚举体一览表 运动控制指令的输出变量运动控制指令的输入输出变量 2-1 变量一览表 MC功能模块使用的变量分为两类。 一类是监视轴等的状态及…

电脑提示丢失mfc140u.dll的详细解决方案,mfc140u.dll文件是什么

遇到电脑显示“缺少 mfc140u.dll 文件”的错误其实是比较常见的。这种提示通常表示某个应用程序在尝试运行时未能找到它所需的关键 DLL 文件,导致无法正常启动。不过,别担心,本文将一步步引导你通过几种不同的方法来解决这个问题,…

VSCode拉取远程项目

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…

el-input设置后缀显示单位并阻止滚轮微调

项目中收集form表单信息时,有时会需要在el-input后面显示单位,效果如图: 当然,我们可以直接在输入框后面加上单位,但直接给输入框上加单位不管是视图上还是用户体验上看起来都要好一点 element-plus / element-ui给我…

[基于 Vue CLI 5 + Vue 3 + Ant Design Vue 4 搭建项目] 01 安装 nodejs 环境

文章目录 下载安装测试 这里让我们去看看如何安装一下 nodejs 的环境 下载 通过官网进行下载安装包 官网 https://nodejs.org/zh-cn点击 下载 Node.js (LTS) 开始下载 安装 下载完成之后,双击进行安装 开始进行安装了 这样,node.js 就安装好了 测试 …

unity3d入门教程三

unity3d入门教程三 8.1游戏脚本8.2脚本的使用8.3认识脚本组件8.4帧率9.1游戏脚本9.2获取节点和组件9.3MonoBehaviour9.4父节点与子节点9.5组件的属性9.6脚本的单步调试 8.1游戏脚本 通过程序控制对象属性(如运动,修改transform的位置属性) …

SpringCloudAlibaba:Seata

1. 面试题 2.1 你简历上写用微服务boot/cloud做过项目,你不可能只有一个数据库吧?谈谈多个数据库之间如何处理分布式事务? 2.2 阿里巴巴的Seata-AT模式如何做到对业务的无侵入? 在一阶段,Seata 会拦截“业务 SQL”&a…

逆向学习系列(三)adb的使用

由于是记录学习,我就用结合自己的理解,用最通俗的语言进行讲解。 adb是android debug bridge的简写,其作用就是将电脑和手机相连接,用电脑控制手机。 一、adb哪里来 我使用的adb一般都是安装模拟器的时候,模拟器自带…

MySQL基础——DQL

DQL(Data Query Language,数据查询语言)是SQL中的一个子集,主要用于查询数据库中的数据。DQL的核心语句是 SELECT,它用于从一个或多个表中提取数据,并能够通过各种条件进行过滤、排序和聚合操作。下面是DQL…

【学习笔记】手写Tomcat 二

目录 响应静态资源 HTTP协议请求格式 1. 解析请求信息 创建解析请求类 HttpRequest 2. 创建静态资源目录 webs 3. 封装响应信息 创建静态资源处理器 StaticResourceHandler 创建响应类 HttpResponse 然后就可以调用响应类了 测试 静态资源的路径说明 作业 1. 绘制…

JNI 详细介绍

一 介绍 java调⽤c,c代码可以通过JNIEnv执行java代码。 安卓NDK 已经对JNI环境进行了集成,我们可以通过android studio来快速搭建一个项目。 二 项目搭建 打开android studio 创建工程,创建工程选择模板Native C 三 模板格式介绍 生成的…

非关系型数据库Redis

文章目录 一,关系型数据库和非关系型数据可区别1.关系型数据库2.非关系型数据库3.区别3.1存储方式3.2扩展方式3.2事务性的支持 二,非关系型数据为什么产生三,Redis1.Redis是什么2.Redis优点3.Redis适用范围4. Redis 快的原因4.1 基于内存运行…

直播标准权威发布,阿里云RTS获首批卓越级评估认证

近期举办的2024“可信云大会”上,中国信通院正式发布了2024年上半年音视频领域最新评估结果。阿里云超低延时直播,以首批卓越级,通过中国信通院超低延时直播性能及服务质量分级测试。 标准发布,权威量化直播体验质量 从直播元年发…