sjvisualizer 是一个可以画各种动态图的包。包版本为0.0.13。
包括动态折线图、动态饼形图、动态区域图、动态柱形图。
高级见
来源其官方文档。
但是其官方文档有一部分写的有点错误,有疑问望不吝赐教。
其中以下图像生成后都是会动的,但是只输出视频所以动态图省略(这里为了方便考虑放的是动态图)
下列函数使用方法
需添加sjvisualizer包,先使用pip install sjvisualizer
安装好该包,在需要用到的代码部分import
import sjvisualizer
...
sjvisualizer.plot.bar(excel='',
title='',
unit='')
或者(更推荐使用下面的)
sjvisualizer import plot as plt
...
plt.bar(excel='',
title='',
unit='')
创建条形图竞赛的函数
sjvisualizer.plot.bar(excel='', title='', sub_title='', duration=1, fps=60, record=False,
output_video='output.mp4', unit='', time_indicator='year', font_color=(0, 0, 0),
background_color=(255, 255, 255), colors={}, n=8)
参数 | 类型 | 详细信息 |
---|---|---|
excel | 字符串 | 包含数据的 excel 文件 |
title | 字符串 | 动画顶部的标题 |
sub_title | 字符串 | 提供额外上下文的副标题,显示在主标题下方 |
duration | 整数 | 动画的长度 |
fps | 整数 | 每秒帧数 |
record | 字符串 | 动画是否应保存为 mp4?默认为 False。如果设置为 True,屏幕上的渲染速度会降低,但是视频的播放速度是正确的。 |
output_video | 保存视频的名称。 | |
unit | 图表中显示的单位 | |
time_indicator | 字符串,‘day’、‘month’ 或 ‘year’) | 时间格式应显示年、月还是日 |
font_color | 元组 (R, G, B) | 呈现到屏幕上的文本的颜色。以 RGB 颜色表示。 |
background_color | 元组 (R, G, B) | 背景颜色。以 RGB 颜色表示。 |
colors | 字典 | 保存每个数据类别的颜色信息的字典。字典的键应与数据类别(列)的名称相对应。字典的值应为颜色的 RGB 值:{“United States”:[ 23, 60, 225 ] },默认值为 {} |
n | 整数 | 要显示的条数 |
创建折线竞赛的函数
sjvisualizer.plot.line(excel='', title='', sub_title='', duration=1, fps=60, record=False,
output_video='output.mp4', unit='', time_indicator='year', events={},
font_color=(0, 0, 0), background_color=(255, 255, 255), colors={})
参数 | 类型 | 详细信息 |
---|---|---|
excel | 字符串 | 包含数据的 excel 文件 |
title | 字符串 | 动画顶部的标题 |
sub_title | 字符串 | 提供额外上下文的副标题,显示在主标题下方 |
duration | 整数 | 动画的长度 |
fps | 整数 | 每秒帧数 |
record | 字符串 | 动画是否应保存为 mp4?默认为 False。如果设置为 True,屏幕上的渲染速度会降低,但是视频的播放速度是正确的。 |
unit | 图表中显示的单位 | |
time_indicator | 字符串,‘day’、‘month’ 或 ‘year’ | 时间格式应显示年、月还是日 |
font_color | 元组 (R, G, B) | 呈现到屏幕上的文本的颜色。以 RGB 颜色表示。 |
background_color | 元组 (R, G, B) | 背景颜色。以 RGB 颜色表示。 |
colors | 字典 | 保存每个数据类别的颜色信息的字典。 字典的键应与数据类别(列)的名称相对应。字典的值应为颜色的 RGB 值:{“United States”:[23, 60, 225]},默认值为 {} |
Parem events
字典用于向折线图添加其他上下文。例如,及时指示事件。
例如:
events = {
“{EVENT NAME}”: [“开始日期 DD/MM/YYYY”,
“结束日期 DD/MM/YYYY”],
“事件 1”: [“28/01/2017”, “28/01/2018”],
“事件 2”: [“28/01/2019”, “28/01/2020”],
“最后事件”: [“28/05/2020”, “28/01/2021”]
}
创建饼形图竞赛的函数
sjvisualizer.plot.pie(excel='', title='', sub_title='', duration=1, fps=60, record=False,
output_video='output.mp4', unit='', time_indicator='year', font_color=(0, 0, 0),
background_color=(255, 255, 255), colors={}, sort=True)
参数 | 类型 | 详细信息 |
---|---|---|
excel | 字符串 | 包含数据的 excel 文件 |
title | 字符串 | 动画顶部的标题 |
sub_title | 字符串 | 提供额外上下文的副标题,显示在主标题下方 |
duration | 整数 | 动画的长度 |
fps | 整数 | 每秒帧数 |
record | 字符串 | 动画是否应保存为 mp4?默认为 False。如果设置为 True,屏幕上的渲染速度会降低,但是视频的播放速度是正确的。 |
output_video | 保存视频的名称。 | |
unit | 图表中显示的单位 | |
time_indicator | 字符串,‘day’、‘month’ 或 ‘year’ | 时间格式应显示年、月还是日 |
font_color | 元组 (R, G, B) | 呈现到屏幕上的文本的颜色。以 RGB 颜色表示。 |
background_color | 元组 (R, G, B) | 背景颜色。以 RGB 颜色表示。 |
colors | 字典 | 保存每个数据类别颜色信息的字典。 字典的键应与数据类别(列)的名称相对应。字典的值应为颜色的 RGB 值:{“United States”:[ 23, 60, 225 ] },默认值为 {} |
sort | 布尔值 | 数据是否应按降序排序? |
创建区间图竞赛的函数
sjvisualizer.plot.stacked_area(excel='', title='', sub_title='', duration=1, fps=60, record=False,
output_video='output.mp4', unit='', time_indicator='year', events={},
font_color=(0, 0, 0), background_color=(255, 255, 255), colors={})
参数 | 类型 | 详细信息 |
---|---|---|
excel | 字符串 | 包含数据的 excel 文件 |
title | 字符串 | 动画顶部的标题 |
sub_title | 字符串 | 提供额外上下文的副标题,显示在主标题下方 |
duration | 整数 | 动画的长度 |
fps | 整数 | 每秒帧数 |
record | 字符串 | 动画是否应保存为 mp4?默认为 False。如果设置为 True,屏幕上的渲染速度会降低,但视频的播放速度是正确的。 |
output_video | 保存视频的名称。 | |
unit | 图表中显示的单位 | |
time_indicator | 字符串,‘day’、‘month’ 或 ‘year’ | 时间格式应显示年、月还是日 |
font_color | 元组 (R, G, B) | 呈现到屏幕上的文本颜色。以 RGB 颜色表示。 |
background_color | 元组 (R, G, B) | 背景颜色。以 RGB 颜色表示。 |
colors | 字典 | 包含每个数据类别颜色信息的字典。 字典的键应与数据类别(列)的名称相对应。字典的值应为颜色的 RGB 值:{“United States”: [ 23, 60, 225 ] },默认值为 {} |
Parem events
字典用于向折线图添加其他上下文。例如,及时指示事件。
例如:
events = {
“{EVENT NAME}”: [“开始日期 DD/MM/YYYY”,
“结束日期 DD/MM/YYYY”],
“事件 1”: [“28/01/2017”, “28/01/2018”],
“事件 2”: [“28/01/2019”, “28/01/2020”],
“最后事件”: [“28/05/2020”, “28/01/2021”]
}