MCPcopy
hub / github.com/chinesehuazhou/python-weekly / create_bar_chart

Function create_bar_chart

resources/weekly_kanban.py:72–107  ·  view source on GitHub ↗

创建堆叠柱状图,展示每期周刊的内容分布 Args: issue_nos (list): 期号列表 articles (list): 文章数量列表 projects (list): 项目数量列表 audio_video (list): 音视频数量列表 hot_topics (list): 讨论话题数量列表 books (list): 赠书数量列表 color_map (dict): 内容类型与颜色的映射 Returns: B

(issue_nos, articles, projects, audio_video, hot_topics, books, color_map)

Source from the content-addressed store, hash-verified

70 return issue_nos, articles, projects, audio_video, hot_topics, books
71
72def create_bar_chart(issue_nos, articles, projects, audio_video, hot_topics, books, color_map):
73 """
74 创建堆叠柱状图,展示每期周刊的内容分布
75
76 Args:
77 issue_nos (list): 期号列表
78 articles (list): 文章数量列表
79 projects (list): 项目数量列表
80 audio_video (list): 音视频数量列表
81 hot_topics (list): 讨论话题数量列表
82 books (list): 赠书数量列表
83 color_map (dict): 内容类型与颜色的映射
84
85 Returns:
86 Bar: pyecharts Bar 图表对象
87 """
88 bar = Bar(init_opts=opts.InitOpts(theme=ThemeType.ESSOS))
89 bar.add_xaxis(issue_nos)
90 categories = ['文章', '项目', '音视频', '讨论', '赠书']
91 for category, values in zip(categories, [articles, projects, audio_video, hot_topics, books]):
92 color = color_map.get(category, "#000000")
93 bar.add_yaxis(
94 category,
95 values,
96 stack="总量",
97 itemstyle_opts=opts.ItemStyleOpts(color=color),
98 label_opts=opts.LabelOpts(is_show=True, formatter=JsCode(
99 "function(params) { return params.value > 0 ? params.value : ''; }"
100 ))
101 )
102 bar.set_global_opts(
103 xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=0)),
104 yaxis_opts=opts.AxisOpts(type_="value"),
105 toolbox_opts=opts.ToolboxOpts(is_show=False)
106 )
107 return bar
108
109def create_pie_chart(articles, projects, audio_video, hot_topics, books, color_map):
110 """

Callers 1

create_echarts_tabFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected