100天精通Python(可视化篇)——第80天:matplotlib绘制不同种类炫酷柱状图代码实战(簇状、堆积、横向、百分比、3D柱状图)
文章目录
- 0. 专栏导读
- 1. 普通柱状图
- 2. 簇状柱形图
- 3. 堆积柱形图
- 4. 横向柱状图
- 5. 横向双向柱状图
- 6. 百分比堆积柱形图
- 7. 3D柱形图
- 8. 3D堆积柱形图
- 9. 3D百分比堆积柱形图
0. 专栏导读
🏆🏆作者介绍:Python领域优质创作者、CSDN/华为云/阿里云/掘金/知乎等平台专家博主
- 🔥🔥本文已收录于Python全栈系列专栏:《100天精通Python从入门到就业》
- 📝📝此专栏文章是专门针对零基础和需要进阶提升的同学所准备的一套完整教学,从0到100的不断进阶深入,后续还有实战项目,轻松应对面试
- 🎉🎉订阅专栏后续可以阅读Python从入门到就业100篇文章;还可私聊进千人Python全栈交流群(手把手教学,问题解答); 进群可领取80GPython全栈教程视频 + 300本计算机书籍:基础、Web、爬虫、数据分析、可视化、机器学习、深度学习、人工智能、算法、面试题等。
- 🚀🚀加入我一起学习进步,一个人可以走的很快,一群人才能走的更远!
1. 普通柱状图
import matplotlib.pyplot as plt
import matplotlibx = ["战狼2", "速度与激情8", "功夫瑜伽", "西游伏妖篇", "变形金刚5:最后的骑士", "摔跤吧!爸爸", "加勒比海盗5:死无对证", "金刚:骷髅岛", "极限特工:终极回归", "生化危机6:终章","乘风破浪", "神偷奶爸3", "智取威虎山", "大闹天竺", "金刚狼3:殊死一战", "蜘蛛侠:英雄归来", "悟空传", "银河护卫队2", "情圣", "新木乃伊", ]
y = [56.01, 26.94, 17.53, 16.49, 15.45, 12.96, 11.8, 11.61, 11.28, 11.12, 10.49, 10.3, 8.75, 7.55, 7.32, 6.99, 6.88,6.86, 6.58, 6.23]# 设置全局中文字体
matplotlib.rc("font", family='MicroSoft YaHei', weight='bold')# 设置图形大小
plt.figure(figsize=(20, 8), dpi=80)
# 绘制条形图
plt.bar(range(len(x)), y, width=0.3)# 设置字符串到x轴
plt.xticks(range(len(x)), x, rotation=45)# 展示
plt.show()
运行结果:
2. 簇状柱形图
- 簇状柱形图是一种常用的数据可视化形式,用于比较同一类别的不同变量之间的数量或大小,并强调各变量之间的差异。它由多个垂直的柱状图组成,每个柱状图代表一个变量,同时每个柱状图在横向轴上都有一个类别名称与其他柱状图共享。
- 应用场景:簇状柱形图适用于许多领域,包括商业、金融、医疗保健和社会科学等。例如,它可以用于比较不同产品在销售量、利润或市场份额方面的表现,或者比较不同国家在人口、GDP或教育水平等方面的差异。
这段代码会生成一个包含三个分组的柱状图,其中每个分组有三个柱子,每个柱子的高度由data数组中对应的元素确定。我们使用colors数组来指定每个分组的颜色,并使用width变量来指定柱子的宽度。在绘图时,我们使用循环来绘制每个分组的柱子,并给每个分组添加一个图例标签。我们还使用set_xlabel和set_ylabel函数来设置坐标轴的标签,使用set_xticks和set_xticklabels函数来设置x轴刻度标签。最后,我们使用spines函数来去掉图形的上边框和右边框,使图形更加美观。
import matplotlib.pyplot as plt
import numpy as np# 数据
data = np.array([[2, 4, 6], [3, 5, 7], [4, 6, 8]])# 颜色
colors = ['#1f77b4', '#ff7f0e', '#2ca02c']# 宽度
width = 0.25# 绘图
fig, ax = plt.subplots()
for i in range(data.shape[0]):ax.bar(np.arange(data.shape[1]) + i*width, data[i], width, color=colors[i], label='Group {}'.format(i+1))# 坐标轴标签
ax.set_xlabel('X Label')
ax.set_ylabel('Y Label')# x轴刻度标签
ax.set_xticks(np.arange(data.shape[1]) + width)
ax.set_xticklabels(['A', 'B', 'C'])# 图例
ax.legend()# 美化
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)plt.show()
运行结果:
3. 堆积柱形图
- 堆积柱形图是一种常用的数据可视化形式,用于比较不同类别之间的数量或大小,并强调各类别的组成成分。它由多个垂直的柱状图组成,每个柱状图代表一个类别,同时每个柱状图被分成不同的部分,每个部分代表该类别的一个组成成分。
- 应用场景:堆积柱形图适用于许多领域,包括商业、金融、医疗保健和社会科学等。例如,它可以用于比较不同产品在销售量、利润或市场份额方面的表现,并显示每种产品的不同销售渠道的贡献比例;或者比较不同国家在人口、GDP或教育水平等方面的差异,并显示每个国家的不同人口组成成分的比例。
这段代码会生成一个包含三个堆叠柱状图,其中每个堆叠柱子的高度由data数组中对应的元素确定。我们使用colors数组来指定每个堆叠柱子的颜色,并使用width变量来指定柱子的宽度。在绘图时,我们使用循环来绘制每个堆叠柱子,并给每个堆叠柱子添加一个图例标签。我们使用bottom变量来保存每个堆叠柱子的底部高度,以便绘制下一个堆叠柱子时使用。我们还使用set_xlabel和set_ylabel函数来设置坐标轴的标签,使用set_xticks和set_xticklabels函数来设置x轴刻度标签。最后,我们使用spines函数来去掉图形的上边框和右边框,使图形更加美观。
import matplotlib.pyplot as plt
import numpy as np# 数据
data = np.array([[2, 4, 6], [3, 5, 7], [4, 6, 8]])# 颜色
colors = ['#1f77b4', '#ff7f0e', '#2ca02c']# 宽度
width = 0.5# 绘图
fig, ax = plt.subplots()
bottom = np.zeros(data.shape[1])
for i in range(data.shape[0]):ax.bar(np.arange(data.shape[1]), data[i], width, bottom=bottom, color=colors[i], label='Group {}'.format(i+1))bottom += data[i]# 坐标轴标签
ax.set_xlabel('X Label')
ax.set_ylabel('Y Label')# x轴刻度标签
ax.set_xticks(np.arange(data.shape[1]))
ax.set_xticklabels(['A', 'B', 'C'])# 图例
ax.legend()# 美化
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)plt.show()
运行结果:
4. 横向柱状图
- 横向柱状图是一种图表类型,它用于比较不同类别之间的数据。该图表以横向条形表示数据,其中每个条形代表一个类别,并且条形的长度表示该类别的数值大小。横向柱状图通常用于比较多个类别之间的数据,以便更容易地比较它们之间的差异。
- 应用场景:横向柱状图常用于商业和金融领域,以比较不同产品或服务的销售额,或不同公司的市场份额。它也可以用于比较不同地区的人口统计数据,例如人口数量或平均收入。
这段代码会生成一个包含一个横向柱状图,其中每个柱子的宽度由x数组中对应的元素确定。在绘图时,我们使用barh函数来绘制横向柱状图:
import matplotlib.pyplot as plt
import matplotlibx = ["战狼2", "速度与激情8", "功夫瑜伽", "西游伏妖篇", "变形金刚5:最后的骑士", "摔跤吧!爸爸", "加勒比海盗5:死无对证", "金刚:骷髅岛", "极限特工:终极回归", "生化危机6:终章","乘风破浪", "神偷奶爸3", "智取威虎山", "大闹天竺", "金刚狼3:殊死一战", "蜘蛛侠:英雄归来", "悟空传", "银河护卫队2", "情圣", "新木乃伊", ]
y = [56.01, 26.94, 17.53, 16.49, 15.45, 12.96, 11.8, 11.61, 11.28, 11.12, 10.49, 10.3, 8.75, 7.55, 7.32, 6.99, 6.88,6.86, 6.58, 6.23]# 设置全局中文字体
matplotlib.rc("font", family='MicroSoft YaHei', weight='bold')# 设置图形大小
plt.figure(figsize=(20, 8), dpi=80)
# 绘制条形图
plt.barh(range(len(x)), y, color="orange")# 设置字符串到y轴
plt.yticks(range(len(x)), x)# 绘制网格
plt.grid(alpha=0.5)plt.show()
运行结果:
5. 横向双向柱状图
- 横向双向柱状图是一种图表类型,它结合了横向柱状图和双向柱状图的特点,用于比较两个不同的数据集之间的差异,并且每个数据集都有多个类别。该图表由两组水平的柱状图组成,其中每个柱子表示一个类别,并且柱子的长度表示该类别的数值大小。两组柱状图在同一垂直轴上对齐,以便更容易地比较它们之间的差异。
- 应用场景:横向双向柱状图通常用于比较两个数据集之间的差异,并且每个数据集都有多个类别,例如比较两个产品或服务的销售额或两个时间段的收入。它也可以用于比较两个不同地区或两个不同群体之间的人口统计数据,例如人口数量或平均收入。横向双向柱状图可以更清晰地显示不同类别之间的差异,并且可以比较两个数据集之间的交叉情况,以便更好地理解数据。
这段代码会生成一个包含两个方向相反的柱状图,其中每个柱子的高度由data1和data2数组中对应的元素确定。我们使用colors数组来指定每个组的颜色。在绘图时,我们使用barh函数来绘制横向柱状图,并使用负数的data2数组来绘制相反方向的柱状图。我们使用set_yticks和set_yticklabels函数来设置y轴刻度标签。我们还使用set_xlabel和set_ylabel函数来设置坐标轴的标签,并使用legend函数来添加图例。最后,我们使用spines函数来去掉图形的上边框和右边框,使图形更加美观。
import matplotlib.pyplot as plt
import numpy as np# 数据
data1 = np.array([2, 4, 6])
data2 = np.array([3, 5, 7])# 颜色
colors = ['#1f77b4', '#ff7f0e']# 绘图
fig, ax = plt.subplots()ax.barh(np.arange(data1.shape[0]), data1, color=colors[0], label='Group 1')
ax.barh(np.arange(data2.shape[0]), -data2, color=colors[1], label='Group 2')# 坐标轴标签
ax.set_xlabel('X Label')
ax.set_ylabel('Y Label')# y轴刻度标签
ax.set_yticks(np.arange(data1.shape[0]))
ax.set_yticklabels(['A', 'B', 'C'])# 图例
ax.legend()# 美化
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)plt.show()
运行结果:
6. 百分比堆积柱形图
- 百分比堆积柱形图是一种图表类型,它用于显示多个类别中各个部分的百分比,并将它们堆积到一个柱形图中。该图表由一个垂直的柱形图组成,其中每个柱子表示一个类别,并且柱子被分成多个部分,每个部分表示该类别中的一个子类别,并且该子类别在该类别中的百分比。所有的子类别加起来应该等于100%。
- 应用场景:百分比堆积柱形图通常用于比较多个类别中各个部分的百分比,例如比较公司的营业额中不同产品的百分比,或比较不同国家的人口中不同年龄段的百分比。它还可以用于比较同一类别中不同部分的百分比,例如比较一个公司的不同部门中不同员工的百分比。百分比堆积柱形图可以更清晰地显示不同部分之间的百分比,并且可以比较不同类别之间的百分比差异。
百分比堆积柱形图可以展示多组数据在不同类别下的百分比分布情况,具有直观、明了的特点。在matplotlib中,可以使用bar函数绘制堆积柱形图,并使用percent属性将每个柱形图表示为百分比。
import numpy as np
import matplotlib.pyplot as plt# 数据
data = np.array([[10, 15, 20, 25],[5, 10, 15, 20],[15, 20, 25, 30]])# 类别
categories = ['A', 'B', 'C', 'D']# 颜色
colors = ['r', 'g', 'b']# 计算每个类别的总和
totals = np.sum(data, axis=0)# 将数据转换为百分比
data_percent = (data / totals) * 100# 绘制百分比堆积柱形图
fig, ax = plt.subplots()
bottom = np.zeros(len(categories))
for i in range(len(data_percent)):ax.bar(categories, data_percent[i], bottom=bottom, color=colors[i % len(colors)], label='Group {}'.format(i+1), width=0.6)bottom += data_percent[i]# 设置图例
ax.legend()# 设置坐标轴标签
ax.set_xlabel('Category')
ax.set_ylabel('Percentage')# 显示图形
plt.show()
运行结果:
7. 3D柱形图
- 3D柱状图是一种可视化数据的图表类型,通常用于展示离散数据的数量或比较不同类别的数据。与传统的二维柱状图相比,3D柱状图可以更直观地呈现数据的高低、宽度和深度,从而更好地展示数据的分布和趋势。
- 3D柱状图通常由三个坐标轴组成:x轴表示数据的类别或时间、y轴表示数据的数量或比例,z轴表示柱状图的深度。用户可以通过旋转和缩放图表来查看不同的角度和视角,以更好地理解数据。
- 应用场景:3D柱状图可以用于各种应用场景,例如市场营销、金融分析、科学研究等。它们可以帮助用户更好地理解数据,从而做出更准确的决策。
在这个示例中,我们使用了一个3x3x4的数据矩阵来表示三组数据在三个类别下的分布情况。我们使用了红、绿、蓝三种颜色来区分不同的数据组。在绘制三维堆积柱形图时,我们使用了两个循环来遍历数据矩阵中的每个元素,然后使用bar函数绘制柱形图。我们使用了一个bottom数组来记录每个柱形图的底部位置,以便在绘制下一个柱形图时可以正确地堆叠在前面的柱形图上。我们还使用了zdir='y’参数来指定柱形图的方向为y轴方向。
我们需要使用matplotlib库中的mplot3d模块和一些美化技巧,这段代码会生成一个包含一个三维柱形图,其中每个柱子的高度由data数组中对应的元素确定。我们使用colors数组来指定每个组的颜色,并使用width变量来指定柱子的宽度。在绘图时,我们使用bar函数来绘制柱状图,并使用zs和zdir参数来指定每个柱子的深度和方向。我们使用alpha参数来指定柱子的透明度。我们使用set_xticks和set_xticklabels函数来设置x轴刻度标签,使用set_yticks和set_yticklabels函数来设置y轴刻度标签。我们还使用set_xlabel、set_ylabel和set_zlabel函数来设置坐标轴的标签。最后,我们使用spines函数来去掉图形的上边框和右边框,使图形更加美观。
import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D# 数据
data = np.array([[2, 4, 6], [3, 5, 7], [4, 6, 8]])# 颜色
colors = ['#1f77b4', '#ff7f0e', '#2ca02c']# 宽度
width = 0.5# 绘图
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
for i in range(data.shape[0]):ax.bar(np.arange(data.shape[1]), data[i], zs=i, zdir='y', width=width, color=colors[i], alpha=0.8)# 坐标轴标签
ax.set_xlabel('X Label')
ax.set_ylabel('Y Label')
ax.set_zlabel('Z Label')# x轴刻度标签
ax.set_xticks(np.arange(data.shape[1]))
ax.set_xticklabels(['A', 'B', 'C'])# y轴刻度标签
ax.set_yticks(np.arange(data.shape[0]))
ax.set_yticklabels(['Group 1', 'Group 2', 'Group 3'])# 美化
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)plt.show()
运行结果:
8. 3D堆积柱形图
- 3D堆积柱形图是一种用于比较多个类别中各部分所占比例的图表类型。它将多个数据系列以柱形的形式堆叠在一起,以显示每个类别中各部分的比例关系。
- 与传统的二维堆积柱形图相比,3D堆积柱形图可以更好地展示数据的分层和深度,从而更直观地呈现数据的比例关系。用户可以通过旋转和缩放图表来查看不同的角度和视角,以更好地理解数据。
- 应用场景:3D堆积柱形图可以用于各种应用场景,例如销售分析、市场研究、人口统计等。它们可以帮助用户更好地了解各部分所占比例,从而更好地制定决策和策略。
案例代码:
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D# 数据
data = np.array([[[10, 15, 20, 25],[5, 10, 15, 20],[15, 20, 25, 30]],[[5, 10, 15, 20],[10, 15, 20, 25],[20, 25, 30, 35]],[[15, 20, 25, 30],[20, 25, 30, 35],[30, 35, 40, 45]]])# 类别
categories = ['A', 'B', 'C', 'D']# 颜色
colors = ['r', 'g', 'b']# 绘制三维堆积柱形图
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
bottom = np.zeros(len(categories))
for i in range(len(data)):for j in range(data.shape[1]):ax.bar(categories, data[i, j], zs=j, zdir='y', bottom=bottom, color=colors[i % len(colors)])bottom += data[i, j]# 设置图例
ax.legend(['Group 1', 'Group 2', 'Group 3'])# 设置坐标轴标签
ax.set_xlabel('Category')
ax.set_ylabel('Group')
ax.set_zlabel('Value')# 显示图形
plt.show()
运行结果:
9. 3D百分比堆积柱形图
- 3D百分比堆积柱形图是一种用于比较多个类别中各部分所占比例的图表类型。它将多个数据系列以柱形的形式堆叠在一起,并且每个柱形中的部分按照所占比例进行分割,以显示每个类别中各部分的比例关系。
- 与传统的二维百分比堆积柱形图相比,3D百分比堆积柱形图可以更好地展示数据的分层和深度,从而更直观地呈现数据的比例关系。用户可以通过旋转和缩放图表来查看不同的角度和视角,以更好地理解数据。
- 应用场景:3D百分比堆积柱形图可以用于各种应用场景,例如销售分析、市场研究、人口统计等。它们可以帮助用户更好地了解各部分所占比例,从而更好地制定决策和策略。
三维百分比堆积柱形图可以展示多组数据在不同类别下的百分比分布情况,具有直观、明了的特点。在matplotlib中,可以使用mplot3d库绘制三维堆积柱形图,并使用percent属性将每个柱形图表示为百分比。
下面是一个示例代码:
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D# 数据
data = np.array([[[10, 15, 20, 25],[5, 10, 15, 20],[15, 20, 25, 30]],[[5, 10, 15, 20],[10, 15, 20, 25],[20, 25, 30, 35]],[[15, 20, 25, 30],[20, 25, 30, 35],[30, 35, 40, 45]]])# 类别
categories = ['A', 'B', 'C', 'D']# 颜色
colors = ['r', 'g', 'b']# 计算每个类别的总和
totals = np.sum(data, axis=0)# 将数据转换为百分比
data_percent = (data / totals) * 100# 绘制三维百分比堆积柱形图
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
bottom = np.zeros(len(categories))
for i in range(len(data_percent)):for j in range(data_percent.shape[1]):ax.bar(categories, data_percent[i, j], zs=j, zdir='y', bottom=bottom, color=colors[i % len(colors)], label='Group {}'.format(i+1), alpha=0.8, width=0.6)bottom += data_percent[i, j]# 设置图例
ax.legend()# 设置坐标轴标签
ax.set_xlabel('Category')
ax.set_ylabel('Group')
ax.set_zlabel('Percentage')# 显示图形
plt.show()
运行结果:
相关文章:

100天精通Python(可视化篇)——第80天:matplotlib绘制不同种类炫酷柱状图代码实战(簇状、堆积、横向、百分比、3D柱状图)
文章目录0. 专栏导读1. 普通柱状图2. 簇状柱形图3. 堆积柱形图4. 横向柱状图5. 横向双向柱状图6. 百分比堆积柱形图7. 3D柱形图8. 3D堆积柱形图9. 3D百分比堆积柱形图0. 专栏导读 🏆🏆作者介绍:Python领域优质创作者、CSDN/华为云/阿里云/掘金…...

【Java】UDP网络编程
文章目录前言DatagramSocketDatagramPacket注意事项与区别代码演示前言 UDP(user datagram protocol)的中文叫用户数据报协议,属于传输层。 UDP是面向非连接的协议,它不与对方建立连接,而是直接把我要发的数据报发给对…...

Springboot源代码总结
前言 编写微服务,巩固知识 文章目录 前言springboot原理springboot启动流程SpringBoot自动配置底层源码解析自动配置到底配了什么?自动配置类条件注解Starter机制@ConditionalOnMissingBeanSpringBoot启动过程源码解析构造SpringApplication对象SpringBoot完整的配置优先级s…...

JVM监控搭建
文章目录JVM监控搭建整体架构JolokiaTelegrafInfluxdbGrafanaJVM监控搭建 整体架构 JVM 的各种内存信息,会通过 JMX 接口进行暴露。 Jolokia 组件负责把 JMX 信息翻译成容易读取的 HTTP 请求。Telegraf 组件作为一个通用的监控 agent,和 JVM 进程部署在…...
java中如何优化大量的if...else...
目录 策略模式(Strategy Pattern) 工厂模式(Factory Pattern) 映射表(Map) 数据驱动设计(Data-Driven Design) 策略模式(Strategy Pattern) 将每个条件分…...

24. linux系统基础
两个进程间想通讯,必须要通过内核,今天讲的信号其实本质也是讲进程间通讯的意思,那么你为什么可以在shell环境下,可以和一个进程发kill-9啊? shell是不是相当于一个进程?你自己运行的那个进程是不是也相当于…...

【C++】面试101,二叉搜索树的最近公共祖先,在二叉树中找到两个节点的最近公共祖先,序列化二叉树,重建二叉树,输出二叉树的右视图,组队竞赛,删除公共字符
目录 1.二叉搜索树的最近公共祖先 2.在二叉树中找到两个节点的最近公共祖先 3.序列化二叉树 4.重建二叉树 5.输出二叉树的右视图 6.组队竞赛 7.删除公共字符 1.二叉搜索树的最近公共祖先 这是一个简单的问题,因为是二叉搜索树(有序)&am…...

Java常见面试题及解答
Java常见面试题及解答1 面向对象的三个特征2 this,super关键字3 基础数据类型4 public、protected、default、private5 接口6 抽象类6.1 抽象类和接口的区别7 重载(overload)、重写(override)8 final、finalize、final…...

【Docker】镜像的原理定制化镜像
文章目录镜像是什么UnionFS(联合文件系统)Docker镜像加载原理制作本地镜像 docker commit -m"提交的描述信息" -a"作者" 容器ID 要创建的目标镜像名:[标签名]案例演示ubuntu安装vim本地镜像发布到阿里云本地镜像发布到阿里云流程将本…...

国内版的ChatGPT弯道超车的机会在哪里?
前言 从去年11月最后一天ChatGPT诞生,截至目前,ChatGPT的热度可谓是爆了。众所周知,ChatGPT是美国“开放人工智能研究中心”研发的聊天机器人程序,它是一个人工智能技术驱动的自然语言处理工具,它能够通过学习和理解人…...
【字符串】
string1.char str[]类型fgets(s,10000,stdin) cin.getline(cin,10000) strlen(str)sizeof 求静态数组长度2.string类型getline(cin,a) cin.getline(cin,10000) str.lenth()str.size()cin 遇到空格就停止3.gets 函数char str[20];gets(str);4.puts 函数puts(str) 相当于 cout<…...
加载驱动之后无法在/dev/下生成vedio0
前言 环境介绍: 1.编译环境 Ubuntu 18.04.5 LTS 2.SDK orangepi Linux 5.4 SDK 3.uboot v2020.04 4.gcc gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf 5.单板 orangepi pc plus 一、问题 继上一篇成功加载gc2035.ko文件之后,理论上…...

Java之类与对象(图文结合)
目录 一、面向对象的初步认知 1、什么是面向对象 2、面向对象与面向过程 二、类定义和使用 1、简单认识类 2、类的定义格式 3、练习 (1)定义一个狗类 (2)定义一个学生类 三、类的实例化 1、什么是实例化 2、类和对象的…...

基于 VCS-NLP 的动态低功耗仿真验证介绍
🔥点击查看精选 IC 技能树系列文章🔥 🔥点击进入【芯片设计验证】社区,查看更多精彩内容🔥 📢 声明: 🥭 作者主页:【MangoPapa的CSDN主页】。⚠️ 本文首发于CSDN&#…...

ESP32-S3 自带usb/jtag初步尝试体验
一、背景 最近在做一台小机器,设备初步规划使用几个实体按钮,这样方便用户戴手套操作。但因为设备有一些需要配置的参数,有需要配备屏幕。但是开发时间比较紧。考虑再三,决定先在初步配备一个简单的控制箱。控制箱上不带屏幕。后…...
前端性能优化总结
前端性能优化是指在设计和开发网站时,采取一些措施来提升网站的性能。这对用户来说是非常重要的,因为高性能的网站可以带来更好的用户体验,同时也有助于提升搜索引擎排名。一、常见前端性能优化措施常见的前端性能优化方法有:压缩…...

React(四) ——hooks的使用
🧁个人主页:个人主页 ✌支持我 :点赞👍收藏🌼关注🧡 文章目录⛳React Hooks💸useState(保存组件状态)🥈useEffect(处理副作用)🔋useCallback(记忆函数&#…...

iphone手机热点卡顿多次断连解决办法
文章目录解决方法检查一下几个地方:1.个人热点是否打开2.查看手机是否为4g3.查看手机的最大兼容性开关是否关闭!!很重要解决方法 检查一下几个地方: 1.个人热点是否打开 这个个人热点容易自动断开,先检查一下是不是…...

设置Typora图床(Github)
PicGo,Github,Typora Nodejs下载: Node.js PicGo下载: GitHub - Molunerfinn/PicGo: A simple & beautiful tool for pictures uploading built by vue-cli-electron-builder 选择downloads或release. 然后进行安装。 Gith…...

jira提交bug规范
一、目的 1)方便开发人员根据bug描述快速进行定位问题原因,减少沟通成本。 2)规范bug编写,可以提现测试团队的专业性、严谨性。 3)可以帮助产品、项目经理及其它人员快速了解bug。 二、说明 本文档主要描述了技术产…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...

从WWDC看苹果产品发展的规律
WWDC 是苹果公司一年一度面向全球开发者的盛会,其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具,对过去十年 WWDC 主题演讲内容进行了系统化分析,形成了这份…...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...

【快手拥抱开源】通过快手团队开源的 KwaiCoder-AutoThink-preview 解锁大语言模型的潜力
引言: 在人工智能快速发展的浪潮中,快手Kwaipilot团队推出的 KwaiCoder-AutoThink-preview 具有里程碑意义——这是首个公开的AutoThink大语言模型(LLM)。该模型代表着该领域的重大突破,通过独特方式融合思考与非思考…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

学校时钟系统,标准考场时钟系统,AI亮相2025高考,赛思时钟系统为教育公平筑起“精准防线”
2025年#高考 将在近日拉开帷幕,#AI 监考一度冲上热搜。当AI深度融入高考,#时间同步 不再是辅助功能,而是决定AI监考系统成败的“生命线”。 AI亮相2025高考,40种异常行为0.5秒精准识别 2025年高考即将拉开帷幕,江西、…...

听写流程自动化实践,轻量级教育辅助
随着智能教育工具的发展,越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式,也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建,…...

中医有效性探讨
文章目录 西医是如何发展到以生物化学为药理基础的现代医学?传统医学奠基期(远古 - 17 世纪)近代医学转型期(17 世纪 - 19 世纪末)现代医学成熟期(20世纪至今) 中医的源远流长和一脉相承远古至…...