运用pyecharts制作可视化大屏(代码展示及效果图-动图)

news2024/9/22 17:30:06

一、Matplotlib绘图

  1. 折线图

import matplotlib.pyplot as plt # 调用画图库

plt.rcParams['font.sans-serif'] = ['SimHei'] # 设置成可以显示中文,字体为黑体

plt.figure(figsize=(12,8)) # 调整图片尺寸

x = ['周一','周二','周三','周四','周五','周六','周日'] # 设置x轴数据

y = [401,632,453,894,775,646,1207] # 设置对应的y轴数据

plt.tick_params(labelsize=21) # 设置坐标轴刻度的字体大小

plt.xlabel('日期', fontsize=24, labelpad=20) # 设置x轴标签

plt.ylabel('播放次数', fontsize=24) # 设置y轴标签

plt.title('视频周播放量数据—宣一名', fontsize=35, pad=45) # 设置标题

plt.plot(x,y, label = "播放次数",color='r',marker='s' ) # 绘制图形

plt.legend(fontsize=20)

plt.show() # 展示图形,在Jupyter中,可省略本行

  1. 柱状图

import matplotlib.pyplot as plt # 调用画图库

plt.rcParams['font.sans-serif'] = ['SimHei'] # 设置成可以显示中文,字体为黑体

plt.figure(figsize=(12,8)) # 调整图片尺寸

x = ['周一','周二','周三','周四','周五','周六','周日'] # 设置x轴数据

y = [401,632,453,894,775,646,1207] # 设置对应的y轴数据

plt.tick_params(labelsize=21) # 设置坐标轴刻度的字体大小

plt.xlabel('日期', fontsize=24, labelpad=20) # 设置x轴标签

plt.ylabel('播放次数', fontsize=24) # 设置y轴标签

plt.title('视频周播放量数据—宣一名', fontsize=35, pad=45) # 设置标题

plt.plot(x,y, label = "播放次数",color='r',marker='s' ) # 绘制图形

plt.legend(fontsize=20)

plt.show() # 展示图形,在Jupyter中,可省略本行c

  1. 环形图

import matplotlib.pyplot as plt # 调用画图库

plt.rcParams['font.sans-serif'] = ['SimHei'] # 设置成可以显示中文,字体为黑体

plt.figure(figsize=(12,8)) # 调整图片尺寸

x = ['周一','周二','周三','周四','周五','周六','周日'] # 设置x轴数据

y = [401,632,453,894,775,646,1207] # 设置对应的y轴数据

plt.tick_params(labelsize=21) # 设置坐标轴刻度的字体大小

plt.xlabel('日期', fontsize=24, labelpad=20) # 设置x轴标签

plt.ylabel('播放次数', fontsize=24) # 设置y轴标签

plt.title('视频周播放量数据—宣一名', fontsize=35, pad=45) # 设置标题

plt.plot(x,y, label = "播放次数",color='r',marker='s' ) # 绘制图形

plt.legend(fontsize=20)

plt.show() # 展示图形,在Jupyter中,可省略本行c

  1. 散点图

import matplotlib.pyplot as plt # 调用画图库

plt.rcParams['font.sans-serif'] = ['SimHei'] # 设置成可以显示中文,字体为黑体

plt.figure(figsize=(12, 8)) # 调整图片尺寸

x = ["周一", "周二", "周三", "周四", "周五", "周六", "周日"]

y = [401,632,453,894,775,646,1207]

y1 = [20,33,27,45,39,24,64]

plt.tick_params(labelsize=21) # 设置坐标轴刻度的字体大小为 21

plt.xlabel('日期', fontsize=21, labelpad=20) # 设置 x 轴名称

plt.ylabel('播放次数', fontsize=21,labelpad=20) # 设置 y 轴名称

plt.title('每日播放量与新增粉丝量-宣一名', fontsize=27, pad=45) # 设置标题

plt.grid( color = 'c', linewidth = 2, linestyle = ':', alpha = 0.3) # 设置网格,颜色、线宽、样式、透明度

plt.scatter(x,y, marker = '*', c = 'r', s = 200,label="播放次数") # 绘制散点图, 设置散点样式

plt.legend()

plt.twinx() #添加右侧 y 轴,实际上是又画了一个折线图,和柱状图共享 x 轴

plt.tick_params(labelsize=21) # 设置坐标轴刻度的字体大小

plt.ylim(0,40)

plt.ylabel('粉丝增长数', fontsize=24,labelpad=20) # 设置 y 轴标签

plt.scatter(x,y1, marker = 'H', c = 'b', s = 200,label="新增粉丝")

plt.legend()

plt.show()

二、Pyecharts绘图

  1. 热力图

from pyecharts import options as opts # 调用图表配置选项库

from pyecharts.charts import HeatMap # 调用画图库

课程安排数据 =[[0, 3, 21], [1, 3, 30], [2, 3,10], [3, 3, 41], [4, 3, 28], [5, 3, 50], [6, 3, 254],

[0, 2, 82], [1, 2, 110], [2, 2, 105], [3, 2,235], [4, 2, 212], [5, 2, 223], [6, 2, 799],

[0, 1, 101], [1, 1, 230], [2, 1, 218 ], [3, 1, 407], [4, 1, 262], [5, 1, 225], [6, 1, 377],

[0, 0, 245], [1, 0, 331], [2, 0, 103], [3, 0, 306], [4, 0, 499], [5, 0, 227], [6, 0, 99] ]# 设置数据

热力图横坐标 = ['周一', '周二', '周三', '周四', '周五', '周六', '周日'] # x轴坐标数据

热力图纵坐标 = ['深夜','晚上','下午','上午'] # y轴坐标数据

宽3='410px' # 设置图片宽度高度变量

高3='250px'

热力图 = (

HeatMap(init_opts=opts.InitOpts(width=宽3, height=高3, chart_id=3)) # 绘图,设置图片大小、图表id

.add_xaxis(热力图横坐标) # 设置x轴坐标名

.add_yaxis("", 热力图纵坐标, 课程安排数据, # 设置y轴坐标名,添加数据

label_opts=opts.LabelOpts(color="white", # 标签字体颜色

font_size=13, # 字体大小

position="inside"), # 位置

itemstyle_opts=opts.ItemStyleOpts(border_color='white', # 边界线颜色

border_width=3)) # 边界线宽度

.set_global_opts(

visualmap_opts=opts.VisualMapOpts(max_=799,is_show=False), # 设置视觉映射配置项,最大值为600

xaxis_opts = opts.AxisOpts(

axislabel_opts = opts.LabelOpts(font_size = 13, # 坐标轴字体大小

color='black'), # 坐标轴字体颜色

axisline_opts = opts.AxisLineOpts(

linestyle_opts=opts.LineStyleOpts(

color='white', # 坐标轴线颜色

width=3))), # 坐标轴线宽度

yaxis_opts = opts.AxisOpts(

axislabel_opts = opts.LabelOpts(font_size = 13, # 坐标轴字体大小

color='black'), # 坐标轴字体颜色

axisline_opts = opts.AxisLineOpts(

linestyle_opts=opts.LineStyleOpts(

color='white', # 坐标轴线颜色

width=3))), # 坐标轴线宽度 width=3))), # 坐标轴线宽度

title_opts = opts.TitleOpts(

title='课 程 安 排 热 力 图-宣一名', # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size = 20, # 标题字体大小

color="black"), # 标题颜色

pos_left = 'center',pos_top='10%'))) # 设置居中

# 将图表作为函数返回值

热力图.render_notebook()

  1. 散点图

from pyecharts.charts import Scatter # 调用画图库

import pyecharts.options as opts # 调用图表配置选项库

x = ["周一", "周二", "周三", "周四", "周五", "周六", "周日"]

y = [401,632,453,894,775,646,1207]

y1 = [20,33,27,45,39,24,64]

散点图 =(

Scatter(init_opts=opts.InitOpts(width="800px", height="600px")) # 定义散点图,设置图片大小

.add_xaxis(x) # 添加x轴数据

.add_yaxis('每日播放量', y, # 添加y轴数据

symbol_size = 20, # 设置散点大小

symbol = 'triangle', # 设置散点为三角形

color = 'blue', # 设置绿色

) # 取消自动注释

.add_yaxis("粉丝数",y1)

.set_global_opts(

title_opts = opts.TitleOpts(title='播放量与粉丝增长情况-宣一名', # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size = 15,color="black"), # 设置字体大小

pos_left = 'center'), # 设置居中

legend_opts=(opts.LegendOpts(pos_left="75%")),

yaxis_opts=opts.AxisOpts(name="播放量",splitline_opts = opts.SplitLineOpts(is_show=True, # 显示y轴网格线

linestyle_opts= opts.LineStyleOpts(

width= 3, # 网格宽度为3

opacity=0.9, # 透明度90%

type_='dotted')),

name_textstyle_opts=opts.TextStyleOpts(color="black")),

xaxis_opts=opts.AxisOpts(name="日期",name_textstyle_opts=opts.TextStyleOpts(color="black")),

)

)

散点图.render_notebook()

  1. 折线图

from pyecharts.charts import Line # 调用画折线图的库

import pyecharts.options as opts # 调用图表配置选项库

折线图 =(

Line(init_opts=opts.InitOpts(width="1200px", height="800px")) # 定义折线图,设置大小1200*800

.add_xaxis(xaxis_data=["周一", "周二", "周三", "周四", "周五", "周六", "周日"]) # 添加x轴数据

.add_yaxis(series_name= '出生率', y_axis=[401,632,453,894,775,646,1207], # 添加y轴数据

linestyle_opts = opts.LineStyleOpts(color='red', width =6), color = 'orange', # 设置折线颜色,宽度,图例颜色

markpoint_opts = opts.MarkPointOpts( data =[ opts.MarkPointItem(name='最大值', type_='max' ), # 设置折线图最高点注释

opts.MarkPointItem(name='最小值', coord=('2020',8.52), value=8.52)], # 最低点注释

symbol_size=70)) # 注释标记点大小

.set_global_opts(

yaxis_opts = opts.AxisOpts( name = '播放次数', # 设置 y 轴名称

min_ = 6, # 设置y轴的起始点

name_textstyle_opts = opts.TextStyleOpts(font_size = 21), # 设置名称字体大小

axislabel_opts = opts.LabelOpts(font_size = 27)), # 设置 y 轴字体大小

xaxis_opts = opts.AxisOpts( name = '日期', # 设置 x 轴名称

name_textstyle_opts = opts.TextStyleOpts(font_size = 21), # 设置名称字体大小

axislabel_opts = opts.LabelOpts(font_size = 27)) , # 设置 x 轴字体大小

title_opts = opts.TitleOpts(title='视频周播放量-宣一名', # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size = 30), # 设置字体大小

pos_left = 'center'), # 设置居中

legend_opts = opts.LegendOpts(pos_right = '10%')) # 调整图例显示位置,距离右侧边缘10%整体宽度的距离

)

折线图.render_notebook() # 展示图片

  1. 地图

from pyecharts import options as opts # 调用图表配置选项库

from pyecharts.charts import Map # 调用画图

from pyecharts.globals import ThemeType # 调用设置主题样式

地图数据 = [ ['山西',81] , # 设置数据

['辽宁',280] ,

['江苏',203 ] ,['浙江',126 ] ,

['福建',65 ],['山东',135 ] ,['上海',182] ,

['湖北',150 ] ,['广东',218] ,

['四川',173] ,

['云南',24 ],['北京',242],['安徽',99]]

宽7='510px'

高7='430px'

def 地图(地图数据):

地图 = (

Map(init_opts=opts.InitOpts(width=宽7, height=高7,theme=ThemeType.WONDERLAND,chart_id=7)) # 设置大小

.add("",data_pair=地图数据,

is_roam=False,

maptype="china",

label_opts=opts.LabelOpts(

color="black",

font_size=10,

font_weight='bold'),

itemstyle_opts=opts.ItemStyleOpts(

color='#008B8B',

area_color='#836FFF',

opacity=1,

border_width=1,

border_type='dotted', # 省份边界为虚

))

.set_global_opts(

title_opts=opts.TitleOpts(

title="籍贯分布统计",

pos_left='center',

title_textstyle_opts=opts.TextStyleOpts(

font_style='italic',

font_size=20,

color="black"

)

),

visualmap_opts=opts.VisualMapOpts(

is_piecewise=True,

type_='color',

min_=0,

max_=100,

range_text=["最高","最低"],

textstyle_opts = opts.TextStyleOpts(color="#FF4500")

),

tooltip_opts = opts.TooltipOpts( # 设置提示框

formatter='{b}: {c}人', # 设置内容格式

textstyle_opts = opts.TextStyleOpts(font_size=13)), # 设置字体大小

)

)

return 地图

地图(地图数据).render_notebook() # 展示图

  1. 环形图

from pyecharts import options as opts # 调用图表配置选项库

from pyecharts.charts import Pie # 调用画饼图库

数据 = [ ('游客', 75), ('粉丝', 25)]

饼图 = (Pie(init_opts=opts.InitOpts(width="460px", height="360px")) # 画饼图

.add('', data_pair=数据,radius=['50%','70%'],center=["50%","60%"],)

.set_colors([ "#FF6A6A", "orange"])

.set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}%"))

.set_global_opts(

title_opts=opts.TitleOpts(title="访客结构-宣一名 ",pos_left = 'center',title_textstyle_opts=opts.TextStyleOpts(font_size=25,color='black')),

legend_opts=opts.LegendOpts(pos_right='0%',orient='vertical',pos_top='45%'))

)

饼图.render_notebook() # 展示图片

  1. 水球图

from pyecharts import options as opts # 调用图表配置选项库

from pyecharts.charts import Liquid # 调用画图库

数据 = [0.85] # 设置数据

水球图 = (

Liquid()

.add("", 数据,

shape = 'triangle',

center = ['50%','60%'], # 设置水球位置

is_outline_show = False, # 删除外边框

color = ['orange'], # 白色波浪

background_color = 'white') # 黄色圆球

.set_global_opts(

title_opts = opts.TitleOpts(

title='粉丝活跃度—宣一名', # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size =35), # 设置字体大小

pos_left = 'center')) # 设置居中

)

水球图.render_notebook() # 展示图片

  1. 条形图

from pyecharts import options as opts # 调用图表配置选项库

from pyecharts.charts import Bar # 调用柱状图库

x = ['0-16','16-25','25-40','40以上']

y = [12.4,41.6,24.3,21.7]

# x.reverse() # 因观看习惯,调整排列顺序

# y.reverse() # 因观看习惯,调整排列顺序

条形图 = (Bar(init_opts=opts.InitOpts(width="740px", height="450px"))#画条形图设置尺寸

.add_xaxis(x) # 设置 x 轴坐标

.add_yaxis('', y,label_opts = opts.LabelOpts( # 设置 y 轴数据

font_size = 24, # 设置注释字体

position='right', # 设置注释位置

color = 'black',

formatter='{c}%'),

color={ 'type': 'linear',

# 变化类型为线型渐变,变化方向为起始点至终点

'x': 0, # (x,y) 为(0,0),是起始点

'y': 0,'x2': 1, # (x2,y2)为(1,0)为终点

'y2': 0,

'colorStops': [{'offset': 0, 'color': 'yellow' },

# 0 代表 0%,起始位置蓝色

{'offset': 1, 'color': ' #FF6A6A'}]})

# 1 代表 100%,终点位置为) # 设置注释内容为对应的数据+%

.reversal_axis() # 将柱状图转换成条形图

.set_global_opts(

xaxis_opts = opts.AxisOpts( name = '年龄',is_show=False, # 设置坐标轴名称

name_textstyle_opts=opts.TextStyleOpts(font_size = 18), # 设置名称字体大小

axislabel_opts = opts.LabelOpts(font_size = 21)), # 设置 x 轴坐标字体大小

yaxis_opts = opts.AxisOpts( name = '占比', # 设置坐标轴名称

name_textstyle_opts=opts.TextStyleOpts(font_size = 18), # 设置名称字体大小

axislabel_opts = opts.LabelOpts(font_size = 21,color = 'black')), # 设置 y 轴坐标字体大小

title_opts = opts.TitleOpts(title='粉丝年龄分布-宣一名', # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size = 25,color = 'black'), # 设置字体大小

pos_left = 'center'))) # 设置居中

条形图.render_notebook() # 展示图

  1. 柱形图

from pyecharts import options as opts # 调用图表配置选项库

from pyecharts.charts import Bar # 调用柱状图库

x = ['点赞','评论','弹幕','分享','收藏']

y = [993,584,355,794,688]

x.reverse() # 因观看习惯,调整排列顺序

y.reverse() # 因观看习惯,调整排列顺序

条形图 = (Bar(init_opts=opts.InitOpts(width="900px", height="400px"))#画条形图设置尺寸

.add_xaxis(x) # 设置 x 轴坐标

.add_yaxis('', y,label_opts = opts.LabelOpts( # 设置 y 轴数据

font_size = 24, # 设置注释字体

color = 'black',

# position="center", # 设置注释位置

formatter='{c}次'),

color={ 'type': 'linear',

# 变化类型为线型渐变,变化方向为起始点至终点

'x': 0, # (x,y) 为(0,0),是起始点

'y': 0,'x2': 1, # (x2,y2)为(1,0)为终点

'y2': 0,

'colorStops': [{'offset': 0, 'color': 'yellow' },

# 0 代表 0%,起始位置蓝色

{'offset': 1, 'color': ' #FF6A6A'}]})

# 1 代表 100%,终点位置为) # 设置注释内容为对应的数据+%

.set_global_opts(

xaxis_opts = opts.AxisOpts( name = '互动种类', # 设置坐标轴名称

name_textstyle_opts=opts.TextStyleOpts(font_size = 18), # 设置名称字体大小

axislabel_opts = opts.LabelOpts(font_size = 20,color = 'black')), # 设置 x 轴坐标字体大小

yaxis_opts = opts.AxisOpts( name = '互动量', # 设置坐标轴名称

name_textstyle_opts=opts.TextStyleOpts(font_size = 18), # 设置名称字体大小

axislabel_opts = opts.LabelOpts(font_size = 20,color = 'black')), # 设置 y 轴坐标字体大小

title_opts = opts.TitleOpts(title='周互动量-宣一名', # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size = 25,color = 'black'), # 设置字体大小

pos_left = 'center'))) # 设置居中

条形图.render_notebook() # 展示图

  1. 雷达图

from pyecharts import options as opts # 调用图表配置选项库

from pyecharts.charts import Radar # 调用雷达图库

博主本人数据 = [[8, 5008, 993, 252, 794 ]] # 设置数据

同类博主平均值 = [[5, 1061, 80, 33, 80 ]] # 注意数据有两个方括号

雷达图 = (

Radar(init_opts=opts.InitOpts(width="800px", height="500px")) # 画雷达图

.add_schema( shape='circle', # 设置为圆形坐标系 # 设置雷达图坐标轴名称

radius='60%', center=['50%','45%'], # 调整大小和位

schema=[ opts.RadarIndicatorItem(name="投稿",max_=10),

opts.RadarIndicatorItem(name="播放量",max_=6000),

opts.RadarIndicatorItem(name="点赞",max_=1000),

opts.RadarIndicatorItem(name="新增粉丝",max_=300),

opts.RadarIndicatorItem(name="分享",max_=900)],

splitline_opt = opts.SplitLineOpts(is_show=True,linestyle_opts=opts.LineStyleOpts(width=3,color='white')),

textstyle_opts = opts.TextStyleOpts(color='black',font_size=20))

.add("博主本人数据", 博主本人数据,color='orange',areastyle_opts=opts.AreaStyleOpts(opacity=0.5)) # 添加雷达图数据

.add("同类博主平均值", 同类博主平均值,color='blue',areastyle_opts=opts.AreaStyleOpts(opacity=0.5))

.set_series_opts(label_opts=opts.LabelOpts(is_show=False)) # 不显示注释

.set_global_opts(

title_opts = opts.TitleOpts(title='周表现评估—宣一名', # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size = 25), # 设置字体大小

pos_left = 'center'), # 设置居中

legend_opts = opts.LegendOpts(legend_icon='*',

pos_right = '5%', # 调整图例位置距离右侧 5%

orient= 'vertical', # 调整图例纵向排列

textstyle_opts=opts.TextStyleOpts(font_size = 27))) # 设置字体大小

)

雷达图.render_notebook()

三、数据可视化大屏

  1. 背景图片

from pyecharts.components import Image # 调用绘图库

图片网址 = 'https://s1.ax1x.com/2022/05/25/XFcJOg.gif' # 设置图片网址

宽0 = "100%" # 设置图片宽度高度变量

高0 = "100%"

def 背景图片(图片网址): # 定义函数,便于可视化大屏调用

图片 = (

Image() # 绘图

.add( 图片网址, # 添加图片

style_opts={"width": 宽0, "height": 高0 }) # 设置图片

)

图片.chart_id = 0 # 设置图表id为0

return 图片 # 设置函数返回值

背景图片(图片网址).render_notebook() # 展示图片

  1. 主标题

import pyecharts.options as opts # 调用图表配置选项库

from pyecharts.charts import Pie # 调用画图库

主标题名称数据 = "各人博客数据分析可视化展示" # 设置数据

宽1='800px' # 设置图片宽度高度变量

高1='60px'

def 主标题(主标题名称数据): # 定义函数,便于可视化大屏调用

标题 = (

Pie(init_opts=opts.InitOpts(width=宽1, height=高1, chart_id=1)) # 绘图,设置图片大小、图表id

.set_global_opts(

title_opts=opts.TitleOpts(

title=主标题名称数据, # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size=45,

font_family = '楷体', # 字体大小

color='#F0FFF0')))) # 字体颜色

return 标题 # 将图表作为函数返回值

主标题(主标题名称数据).render_notebook()

  1. 副标题

import pyecharts.options as opts # 调用图表配置选项库

from pyecharts.charts import Pie # 调用画图库

副标题名称数据 = '宣一名 2022-6-7' # 设置数据

宽2='270px' # 设置图片宽度高度变量

高2='40px'

def 副标题(副标题名称数据): # 定义函数,便于可视化大屏调用

标题 = (

Pie(init_opts=opts.InitOpts(width=宽2, height=高2,chart_id=2)) # 绘图,设置图片大小、图表id

.set_global_opts(

title_opts=opts.TitleOpts(

title=副标题名称数据, # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size=30,

font_family = '楷体',# 字体大小

color='#F0FFF0')))) # 字体颜色

return 标题 # 将图表作为函数返回值

副标题(副标题名称数据).render_notebook()

  1. 热力图

from pyecharts import options as opts # 调用图表配置选项库

from pyecharts.charts import HeatMap # 调用画图库

课程安排数据 =[[0, 3, 21], [1, 3, 30], [2, 3,10], [3, 3, 41], [4, 3, 28], [5, 3, 50], [6, 3, 254],

[0, 2, 82], [1, 2, 110], [2, 2, 105], [3, 2,235], [4, 2, 212], [5, 2, 223], [6, 2, 799],

[0, 1, 101], [1, 1, 230], [2, 1, 218 ], [3, 1, 407], [4, 1, 262], [5, 1, 225], [6, 1, 377],

[0, 0, 245], [1, 0, 331], [2, 0, 103], [3, 0, 306], [4, 0, 499], [5, 0, 227], [6, 0, 99] ]# 设置数据

热力图横坐标 = ['周一', '周二', '周三', '周四', '周五', '周六', '周日'] # x轴坐标数据

热力图纵坐标 = ['深夜','晚上','下午','上午'] # y轴坐标数据

宽3='410px' # 设置图片宽度高度变量

高3='250px'

热力图 = (

HeatMap(init_opts=opts.InitOpts(width=宽3, height=高3, chart_id=3)) # 绘图,设置图片大小、图表id

.add_xaxis(热力图横坐标) # 设置x轴坐标名

.add_yaxis("", 热力图纵坐标, 课程安排数据, # 设置y轴坐标名,添加数据

label_opts=opts.LabelOpts(color="white", # 标签字体颜色

font_size=13, # 字体大小

position="inside"), # 位置

itemstyle_opts=opts.ItemStyleOpts(border_color='white', # 边界线颜色

border_width=3)) # 边界线宽度

.set_global_opts(

visualmap_opts=opts.VisualMapOpts(max_=799,is_show=False), # 设置视觉映射配置项,最大值为600

xaxis_opts = opts.AxisOpts(

axislabel_opts = opts.LabelOpts(font_size = 13, # 坐标轴字体大小

color='black'), # 坐标轴字体颜色

axisline_opts = opts.AxisLineOpts(

linestyle_opts=opts.LineStyleOpts(

color='white', # 坐标轴线颜色

width=3))), # 坐标轴线宽度

yaxis_opts = opts.AxisOpts(

axislabel_opts = opts.LabelOpts(font_size = 13, # 坐标轴字体大小

color='black'), # 坐标轴字体颜色

axisline_opts = opts.AxisLineOpts(

linestyle_opts=opts.LineStyleOpts(

color='white', # 坐标轴线颜色

width=3))), # 坐标轴线宽度 width=3))), # 坐标轴线宽度

title_opts = opts.TitleOpts(

title='课 程 安 排 热 力 图-宣一名', # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size = 20, # 标题字体大小

color="black"), # 标题颜色

pos_left = 'center',pos_top='10%'))) # 设置居中

# 将图表作为函数返回值

热力图.render_notebook()

  1. 散点图

from pyecharts.charts import Scatter # 调用画图库

import pyecharts.options as opts # 调用图表配置选项库

x = ["周一", "周二", "周三", "周四", "周五", "周六", "周日"]

y = [401,632,453,894,775,646,1207]

y1 = [20,33,27,45,39,24,64]

散点图 =(

Scatter(init_opts=opts.InitOpts(width="800px", height="600px")) # 定义散点图,设置图片大小

.add_xaxis(x) # 添加x轴数据

.add_yaxis('每日播放量', y, # 添加y轴数据

symbol_size = 20, # 设置散点大小

symbol = 'triangle', # 设置散点为三角形

color = 'blue', # 设置绿色

) # 取消自动注释

.add_yaxis("粉丝数",y1)

.set_global_opts(

title_opts = opts.TitleOpts(title='播放量与粉丝增长情况-宣一名', # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size = 15,color="black"), # 设置字体大小

pos_left = 'center'), # 设置居中

legend_opts=(opts.LegendOpts(pos_left="75%")),

yaxis_opts=opts.AxisOpts(name="播放量",splitline_opts = opts.SplitLineOpts(is_show=True, # 显示y轴网格线

linestyle_opts= opts.LineStyleOpts(

width= 3, # 网格宽度为3

opacity=0.9, # 透明度90%

type_='dotted')),

name_textstyle_opts=opts.TextStyleOpts(color="black")),

xaxis_opts=opts.AxisOpts(name="日期",name_textstyle_opts=opts.TextStyleOpts(color="black")),

)

)

散点图.render_notebook()

  1. 折线图

from pyecharts.charts import Line # 调用画折线图的库

import pyecharts.options as opts # 调用图表配置选项库

折线图 =(

Line(init_opts=opts.InitOpts(width="800px", height="500px")) # 定义折线图,设置大小1200*800

.add_xaxis(xaxis_data=["周一", "周二", "周三", "周四", "周五", "周六", "周日"]) # 添加x轴数据

.add_yaxis(series_name= '出生率', y_axis=[401,632,453,894,775,646,1207], # 添加y轴数据

linestyle_opts = opts.LineStyleOpts(color='red', width =6), color = 'orange', # 设置折线颜色,宽度,图例颜色

markpoint_opts = opts.MarkPointOpts( data =[ opts.MarkPointItem(name='最大值', type_='max' ), # 设置折线图最高点注释

opts.MarkPointItem(name='最小值', coord=('2020',8.52), value=8.52)], # 最低点注释

symbol_size=70)) # 注释标记点大小

.set_global_opts(

yaxis_opts = opts.AxisOpts( name = '播放次数', # 设置 y 轴名称

min_ = 6, # 设置y轴的起始点

name_textstyle_opts = opts.TextStyleOpts(font_size = 21), # 设置名称字体大小

axislabel_opts = opts.LabelOpts(font_size = 27)), # 设置 y 轴字体大小

xaxis_opts = opts.AxisOpts( name = '日期', # 设置 x 轴名称

name_textstyle_opts = opts.TextStyleOpts(font_size = 21), # 设置名称字体大小

axislabel_opts = opts.LabelOpts(font_size = 27)) , # 设置 x 轴字体大小

title_opts = opts.TitleOpts(title='视频周播放量-宣一名', # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size = 30), # 设置字体大小

pos_left = 'center'), # 设置居中

legend_opts = opts.LegendOpts(pos_right = '10%')) # 调整图例显示位置,距离右侧边缘10%整体宽度的距离

)

折线图.render_notebook()

  1. 地图

from pyecharts import options as opts # 调用图表配置选项库

from pyecharts.charts import Map # 调用画图

from pyecharts.globals import ThemeType # 调用设置主题样式

地图数据 = [ ['山西',81] , # 设置数据

['辽宁',280] ,

['江苏',203 ] ,['浙江',126 ] ,

['福建',65 ],['山东',135 ] ,['上海',182] ,

['湖北',150 ] ,['广东',218] ,

['四川',173] ,

['云南',24 ],['北京',242],['安徽',99]]

宽7='510px'

高7='430px'

def 地图(地图数据):

地图 = (

Map(init_opts=opts.InitOpts(width=宽7, height=高7,theme=ThemeType.WONDERLAND,chart_id=7)) # 设置大小

.add("",data_pair=地图数据,

is_roam=False,

maptype="china",

label_opts=opts.LabelOpts(

color="black",

font_size=10,

font_weight='bold'),

itemstyle_opts=opts.ItemStyleOpts(

color='#008B8B',

area_color='#836FFF',

opacity=1,

border_width=1,

border_type='dotted', # 省份边界为虚

))

.set_global_opts(

title_opts=opts.TitleOpts(

title="籍贯分布统计",

pos_left='center',

title_textstyle_opts=opts.TextStyleOpts(

font_style='italic',

font_size=20,

color="black"

)

),

visualmap_opts=opts.VisualMapOpts(

is_piecewise=True,

type_='color',

min_=0,

max_=100,

range_text=["最高","最低"],

textstyle_opts = opts.TextStyleOpts(color="#FF4500")

),

tooltip_opts = opts.TooltipOpts( # 设置提示框

formatter='{b}: {c}人', # 设置内容格式

textstyle_opts = opts.TextStyleOpts(font_size=13)), # 设置字体大小

)

)

return 地图

地图(地图数据).render_notebook() # 展示图

  1. 环形图

from pyecharts import options as opts # 调用图表配置选项库

from pyecharts.charts import Pie # 调用画饼图库

数据 = [ ('游客', 75), ('粉丝', 25)]

饼图 = (Pie(init_opts=opts.InitOpts(width="460px", height="360px")) # 画饼图

.add('', data_pair=数据,radius=['50%','70%'],center=["50%","60%"],)

.set_colors([ "#FF6A6A", "orange"])

.set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}%"))

.set_global_opts(

title_opts=opts.TitleOpts(title="访客结构-宣一名 ",pos_left = 'center',title_textstyle_opts=opts.TextStyleOpts(font_size=25,color='black')),

legend_opts=opts.LegendOpts(pos_right='0%',orient='vertical',pos_top='45%'))

)

饼图.render_notebook() # 展示图片

  1. 水球图

from pyecharts import options as opts # 调用图表配置选项库

from pyecharts.charts import Liquid # 调用画图库

数据 = [0.85] # 设置数据

水球图 = (

Liquid()

.add("", 数据,

shape = 'triangle',

center = ['50%','60%'], # 设置水球位置

is_outline_show = False, # 删除外边框

color = ['orange'], # 白色波浪

background_color = 'white') # 黄色圆球

.set_global_opts(

title_opts = opts.TitleOpts(

title='粉丝活跃度—宣一名', # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size =35), # 设置字体大小

pos_left = 'center')) # 设置居中

)

水球图.render_notebook() # 展示图片

  1. 条形图

from pyecharts import options as opts # 调用图表配置选项库

from pyecharts.charts import Bar # 调用柱状图库

x = ['0-16','16-25','25-40','40以上']

y = [12.4,41.6,24.3,21.7]

# x.reverse() # 因观看习惯,调整排列顺序

# y.reverse() # 因观看习惯,调整排列顺序

条形图 = (Bar(init_opts=opts.InitOpts(width="740px", height="450px"))#画条形图设置尺寸

.add_xaxis(x) # 设置 x 轴坐标

.add_yaxis('', y,label_opts = opts.LabelOpts( # 设置 y 轴数据

font_size = 24, # 设置注释字体

position='right', # 设置注释位置

color = 'black',

formatter='{c}%'),

color={ 'type': 'linear',

# 变化类型为线型渐变,变化方向为起始点至终点

'x': 0, # (x,y) 为(0,0),是起始点

'y': 0,'x2': 1, # (x2,y2)为(1,0)为终点

'y2': 0,

'colorStops': [{'offset': 0, 'color': 'yellow' },

# 0 代表 0%,起始位置蓝色

{'offset': 1, 'color': ' #FF6A6A'}]})

# 1 代表 100%,终点位置为) # 设置注释内容为对应的数据+%

.reversal_axis() # 将柱状图转换成条形图

.set_global_opts(

xaxis_opts = opts.AxisOpts( name = '年龄',is_show=False, # 设置坐标轴名称

name_textstyle_opts=opts.TextStyleOpts(font_size = 18), # 设置名称字体大小

axislabel_opts = opts.LabelOpts(font_size = 21)), # 设置 x 轴坐标字体大小

yaxis_opts = opts.AxisOpts( name = '占比', # 设置坐标轴名称

name_textstyle_opts=opts.TextStyleOpts(font_size = 18), # 设置名称字体大小

axislabel_opts = opts.LabelOpts(font_size = 21,color = 'black')), # 设置 y 轴坐标字体大小

title_opts = opts.TitleOpts(title='粉丝年龄分布-宣一名', # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size = 25,color = 'black'), # 设置字体大小

pos_left = 'center'))) # 设置居中

条形图.render_notebook() # 展示图

  1. 柱形图

from pyecharts import options as opts # 调用图表配置选项库

from pyecharts.charts import Bar # 调用柱状图库

x = ['点赞','评论','弹幕','分享','收藏']

y = [993,584,355,794,688]

x.reverse() # 因观看习惯,调整排列顺序

y.reverse() # 因观看习惯,调整排列顺序

条形图 = (Bar(init_opts=opts.InitOpts(width="900px", height="400px"))#画条形图设置尺寸

.add_xaxis(x) # 设置 x 轴坐标

.add_yaxis('', y,label_opts = opts.LabelOpts( # 设置 y 轴数据

font_size = 24, # 设置注释字体

color = 'black',

# position="center", # 设置注释位置

formatter='{c}次'),

color={ 'type': 'linear',

# 变化类型为线型渐变,变化方向为起始点至终点

'x': 0, # (x,y) 为(0,0),是起始点

'y': 0,'x2': 1, # (x2,y2)为(1,0)为终点

'y2': 0,

'colorStops': [{'offset': 0, 'color': 'yellow' },

# 0 代表 0%,起始位置蓝色

{'offset': 1, 'color': ' #FF6A6A'}]})

# 1 代表 100%,终点位置为) # 设置注释内容为对应的数据+%

.set_global_opts(

xaxis_opts = opts.AxisOpts( name = '互动种类', # 设置坐标轴名称

name_textstyle_opts=opts.TextStyleOpts(font_size = 18), # 设置名称字体大小

axislabel_opts = opts.LabelOpts(font_size = 20,color = 'black')), # 设置 x 轴坐标字体大小

yaxis_opts = opts.AxisOpts( name = '互动量', # 设置坐标轴名称

name_textstyle_opts=opts.TextStyleOpts(font_size = 18), # 设置名称字体大小

axislabel_opts = opts.LabelOpts(font_size = 20,color = 'black')), # 设置 y 轴坐标字体大小

title_opts = opts.TitleOpts(title='周互动量-宣一名', # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size = 25,color = 'black'), # 设置字体大小

pos_left = 'center'))) # 设置居中

条形图.render_notebook() # 展示图

  1. 雷达图

from pyecharts import options as opts # 调用图表配置选项库

from pyecharts.charts import Radar # 调用雷达图库

博主本人数据 = [[8, 5008, 993, 252, 794 ]] # 设置数据

同类博主平均值 = [[5, 1061, 80, 33, 80 ]] # 注意数据有两个方括号

雷达图 = (

Radar(init_opts=opts.InitOpts(width="800px", height="500px")) # 画雷达图

.add_schema( shape='circle', # 设置为圆形坐标系 # 设置雷达图坐标轴名称

radius='60%', center=['50%','45%'], # 调整大小和位

schema=[ opts.RadarIndicatorItem(name="投稿",max_=10),

opts.RadarIndicatorItem(name="播放量",max_=6000),

opts.RadarIndicatorItem(name="点赞",max_=1000),

opts.RadarIndicatorItem(name="新增粉丝",max_=300),

opts.RadarIndicatorItem(name="分享",max_=900)],

splitline_opt = opts.SplitLineOpts(is_show=True,linestyle_opts=opts.LineStyleOpts(width=3,color='white')),

textstyle_opts = opts.TextStyleOpts(color='black',font_size=20))

.add("博主本人数据", 博主本人数据,color='orange',areastyle_opts=opts.AreaStyleOpts(opacity=0.5)) # 添加雷达图数据

.add("同类博主平均值", 同类博主平均值,color='blue',areastyle_opts=opts.AreaStyleOpts(opacity=0.5))

.set_series_opts(label_opts=opts.LabelOpts(is_show=False)) # 不显示注释

.set_global_opts(

title_opts = opts.TitleOpts(title='周表现评估—宣一名', # 设置标题

title_textstyle_opts=opts.TextStyleOpts(font_size = 25), # 设置字体大小

pos_left = 'center'), # 设置居中

legend_opts = opts.LegendOpts(legend_icon='*',

pos_right = '5%', # 调整图例位置距离右侧 5%

orient= 'vertical', # 调整图例纵向排列

textstyle_opts=opts.TextStyleOpts(font_size = 27))) # 设置字体大小

)

雷达图.render_notebook()

  1. 整合可视化大屏

from pyecharts.charts import Page # 调用画图库

from bs4 import BeautifulSoup # 可解析网页文件的库

import webbrowser # 可自动打开网页的库

def 制作初稿(): # 制作初稿

可视化大屏 = Page(page_title = '各人博客数据分析可视化展示——宣一名 2022-6-7') # 定义大屏、设置网页标签

可视化大屏.add( # 添加图表到可视化大屏

背景图片(图片网址),

主标题(主标题名称数据),

副标题(副标题名称数据),

热力图(课程安排数据),

散点图(学生编号数据,学生体温数据),

教室平均温度仪表盘(教室平均温度数据),

寝室平均温度仪表盘(寝室平均温度数据),

籍贯分布统计地图(籍贯分布数据),

性别比例环形图(性别比例数据),

考研意向水球图(考研意向数据),

年级人数统计条形图(年级名称数据,年级人数数据),

获奖统计柱状图(获奖统计数据,获奖等级数据),

成绩综合评价雷达图(学科分类,学科平均成绩),

)

可视化大屏.render('数据可视化大屏.html')

def 排版调试(): # 对去白边后的初稿排版

with open("数据可视化大屏.html", "r+", encoding='utf-8') as 可视化大屏: # 打开可视化大屏文件

大屏源代码 = BeautifulSoup(可视化大屏, 'lxml') # 解析本地html文件

图表 = 大屏源代码.select('.chart-container') # 定位初稿中的图表

图表[0]["style"] = f"width:{宽0};height:{高0}; position:absolute;top:0%;left:0%;" # 重新设置图表位置和大小

图表[1]["style"] = f"width:{宽1};height:{高1}; position:absolute;top:1%;left:25%;" # 重新设置图表位置和大小

图表[2]["style"] = f"width:{宽2};height:{高2}; position:absolute;top:3%;left:80%;" # 重新设置图表位置和大小

图表[3]["style"] = f"width:{宽3};height:{高3}; position:absolute;top:11%;left:1%;"

图表[4]["style"] = f"width:{宽4};height:{高4}; position:absolute;top:41%;left:1.25%;"

图表[5]["style"] = f"width:{宽5};height:{高5}; position:absolute;top:63%;left:1%;"

图表[6]["style"] = f"width:{宽6};height:{高6}; position:absolute;top:63%;left:14%;"

图表[7]["style"] = f"width:{宽7};height:{高7}; position:absolute;top:10%;left:25%;"

图表[8]["style"] = f"width:{宽8};height:{高8}; position:absolute;top:70%;left:33%;"

图表[9]["style"] = f"width:{宽9};height:{高9}; position:absolute;top:64%;left:50%;"

图表[10]["style"] = f"width:{宽10};height:{高10}; position:absolute;top:11%;left:70.5%;"

图表[11]["style"] = f"width:{宽11};height:{高11}; position:absolute;top:38%;left:70.5%;"

图表[12]["style"] = f"width:{宽12};height:{高12}; position:absolute;top:66%;left:75%;"

大屏源代码 = str(大屏源代码) # 将源代码转字符串格式

可视化大屏.seek(0) # 将光标移动到文件开头

可视化大屏.truncate() # 删除光标后所有内容

可视化大屏.write(大屏源代码) # 写入经过去白边的源代码

可视化大屏.close() # 保存关闭文件

def 去除白边(): # 去除大屏周围的白边

with open("数据可视化大屏.html", "r+", encoding='utf-8') as 可视化大屏: # 打开可视化大屏文件

大屏源代码 = BeautifulSoup(可视化大屏, 'lxml') # 解析本地html文件

大屏源代码 = str(大屏源代码) # 将源代码转字符串格式

大屏源代码 = 大屏源代码.replace('<p class="title" style="font-size: 18px; font-weight:bold;"> </p>','') # 删除产生白边的代码

大屏源代码 = 大屏源代码.replace('<p class="subtitle" style="font-size: 12px;"> </p>','') # 删除产生白边的代码

大屏源代码 = 大屏源代码.replace('</head>','<style>img {display:block;}</style></head>') # 删除产生白边的代码

可视化大屏.seek(0) # 将光标移动到文件开头

可视化大屏.truncate() # 删除光标后所有内容

可视化大屏.write(大屏源代码) # 写入经过去白边的源代码

可视化大屏.close() # 保存关闭文件

def 自动启动(): # 自动启动大屏

webbrowser.open("数据可视化大屏.html")

if __name__ == "__main__": # 执行整篇代码的入口

制作初稿()

排版调试()

去除白边()

自动启动()

课程安排热力图(课程安排数据)

体温统计散点图(学生编号数据,学生体温数据)

教室平均温度仪表盘(教室平均温度数据)

寝室平均温度仪表盘(寝室平均温度数据)

籍贯分布统计地图(籍贯分布数据)

性别比例环形图(性别比例数据)

考研意向水球图(考研意向数据)

年级人数统计条形图(年级名称数据,年级人数数据)

获奖统计柱状图(获奖统计数据,获奖等级数据)

成绩综合评价雷达图(学科分类,学科平均成绩)

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

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

相关文章

物联网网络通讯知识

RTU是什么 RTU英文全称Remote Terminal Units&#xff0c;中文全称为远程终端单元。远程终端设备(RTU)是安装在远程现场的电子设备&#xff0c;用来监视和测量安装在远程现场的传感器和设备。通俗理解就是能够编程的还可以将数据传输到服务器的工具。RTU内部是包含通讯模块的&…

4、详细版易学版TypeScript - 元组 枚举

一、元组(Tuple) 数组&#xff1a;合并了相同类型的对象 const myArr: Array<number> [1, 2, 3]; 元组(Tuple)&#xff1a;合并了不同类型的对象 // 定义元组时就要确定好数据的类型&#xff0c;并一一对应 const tuple: [number, string] [12, "hi"]; // 添…

QT客户端外包开发的特点

QT是一种跨平台的C应用程序开发框架&#xff0c;主要用于开发图形用户界面(GUI)应用程序。它提供了一套丰富的类库和工具&#xff0c;可以帮助开发者快速构建高质量、可扩展、易于维护的应用程序。今天和大家分享一下QT的主要特点和注意的问题&#xff0c;希望对大家有所帮助。…

探索LeetCode【0011】盛最多水的容器(已懂)

目录 0. 题目1. 官方解答一&#xff08;已懂&#xff09;2. 精简解答二&#xff08;已懂&#xff09;3. 正确性解释 0. 题目 题目链接&#xff1a;【0011】盛最多水的容器 给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;第 i 条线的两个端点是 (i, 0) 和 (i,…

From Java To Kotlin:空安全、扩展、函数、Lambda很详细,这次终于懂了

From Java To Kotlin, 空安全、扩展、函数、Lambda 概述&#xff08;Summarize&#xff09; Kotlin 是什么&#xff1f;可以做什么&#xff1f;Android 官方开发语言从Java变为Kotlin,Java 有哪些问题&#xff1f;Kotlin的优点Kotlin 特性&#xff08;Features&#xff09; K…

有名的国外CRM系统有哪些?如何选择?

CRM系统可以帮助企业获得更多地潜在客户&#xff0c;优化销售流程&#xff0c;提高工作效率&#xff0c;增强客户服务水平&#xff0c;是如今企业不可或缺的工具。那么&#xff0c;国外CRM的知名厂商有哪些&#xff1f;下面小编来为大家进行推荐。 Zoho CRM&#xff1a; Zoho…

快手国际化 后端开发面经一面

目录 1.JMM内存模型2.堆怎么管理内存3.垃圾回收算法4.跨代引用问题怎么解决5.垃圾回收器6.CMS回收过程7.G1和CMS区别 1.JMM内存模型 计算机存储结构&#xff0c;从本地磁盘到主存到CPU缓存&#xff0c;也就是从硬盘到内存&#xff0c;到CPU。 问题&#xff1f;和推导出我们需要…

全国节能宣传周知识答题活动

全国节能宣传周知识答题活动 若想在短期内&#xff0c;进行安全生产知识的传播&#xff0c;那么答题无疑是有效方式之一。 答题活动小程序v3.0&#xff0c;基于微信原生小程序云开发实现。主要包含六大功能模块页面&#xff0c;首页、活动规则页、排行榜页、答题页、结果页、…

每日一个MySQL问题: MTS 高并发下主从表空间不一致的问题

简单记录原因&#xff0c;最近我也遇到这样的问题&#xff0c;涉及的知识点其实很多&#xff0c;我也仅仅是简单分析了一下&#xff0c;供参考。模拟版本8.0.28。 一、问题说明和模拟方式 就是主从一个表&#xff0c;主库大约600M&#xff0c;从库大约900M&#xff0c;当然主从…

推荐一个网络安全网站(HTML)

废话不多&#xff0c;直接上链接https://www.hackthissite.org/ 这不是一个新手向的网站&#xff0c;建议有一定基础的同学访问&#xff0c;里面大部分都是黑客实操&#xff0c;对大部分希望学习网络安全并有一定基础的人都可以有较大提升 全区英文&#xff0c;这对各位应该不…

Java面试题汇总(包含算法题及底层知识)

花了很久时间整理了Java领域互联网公司常考的面试题&#xff0c;主要包含六大类: 第一类:Java及Javaweb常考基础题及高级题&#xff0c;包含了很多公司爱问的非常冷门的知识点&#xff0c;很多面试官喜欢通过问非常冷门的知识来判断面试者的基础掌握程度。 第二类:Java虚拟机以…

EasyRecovery16电脑硬盘数据恢复软件功能讲解

硬盘是很常见的存储数据的设备&#xff0c;硬盘中很多重要的数据一旦丢失会很麻烦&#xff0c;不过现在有硬盘数据恢复软件可以自行在家恢复数据。今天的文章就带大家来看看硬盘恢复数据的软件EasyRecovery。 EasyRecovery 是一款专业的数据恢复软件&#xff0c;支持恢复不同存…

【Proteus仿真】51单片机Blink点灯实验

【Proteus仿真】51单片机Blink点灯实验 &#x1f516;Proteus仿真基础实验-点亮第一个LED灯。&#x1f33f;Proteus8.12平台&#x1f33f;本实验代码基于VSM Studio&#xff0c;采用SDCC编译器。&#x1f3ac;仿真演示&#xff1a; ⛳头文件使用说明 ⚡第一次调用STC89.h头文…

MySQL is null 走不走索引?

网上很多的说法&#xff0c;都是说不能走索引。但其实是错误的。 其实也是又可能走索引的。 比如&#xff0c;select * from table where a xxx or a is null; 通过explain 看这条sql的执行计划&#xff0c;type ref_or_null&#xff0c;这条sql语句会查询两次&#xff0c;第…

带拉绳的按钮

看看效果&#xff1a; 再上代吗&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title><script src"https://unpkg.co/gsap3/dist/gsap.min.js"></scr…

可视区域兼容性问题的思考及方法封装

今日在复习可视化尺寸获取时突发奇想&#xff0c;为什么要在怪异模式下使用document.body.clientWidth&#xff0c;在标准模式下使用document.documentElement.clientWidth&#xff1f;以及是否在IE8及以下的版本中其中一个获取方式将返回undefined或0。  出于该问题的思考&am…

C++的cin详解

2023年5月20日&#xff0c;周六早上&#xff1a; 我发现我找不到非常详细的cin类的成员函数&#xff0c;只好自己写了。 不定期更新。 cin的继承关系 cin类继承自istream类&#xff0c;ostream类继承自ios类&#xff0c;ios类继承自ios_base类 cin类拥有的所有成员函数 1. …

【算法题】2352. 相等行列对

插&#xff1a; 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 坚持不懈&#xff0c;越努力越幸运&#xff0c;大家一起学习鸭~~~ 题目&#xff1a; 给你一个下标从 0 开始、大小为 n …

ChatGPT 推出 iOS 应用,支持语音输入,使用体验如何?

最近&#xff0c;OpenAI 宣布推出官方 iOS 应用&#xff0c;允许用户随时随地访问其高人气 AI 聊天机器人&#xff0c;此举也打破了近几个月内苹果 App Store 上充斥似是而非的山寨服务的窘境。 该应用程序是 ChatGPT 的首个官方移动应用程序。ChatGPT 软件程序在去年推出后迅速…

Inertial Explorer处理pospac数据总结

Inertial Explorer处理pospac数据的过程包括&#xff1a;1&#xff09;从pospac提取出gps数据和imu数据&#xff1b;2&#xff09;gps数据转成rinex格式&#xff1b;3)imu数据转成imr格式&#xff1b;4&#xff09;IE对gps数据进行PPP解算&#xff1b;5&#xff09;紧耦合融合解…