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

Function create_pie_chart

resources/weekly_kanban.py:109–142  ·  view source on GitHub ↗

创建饼图,展示一个季度内容的整体分布 Args: articles (list): 文章数量列表 projects (list): 项目数量列表 audio_video (list): 音视频数量列表 hot_topics (list): 讨论话题数量列表 books (list): 赠书数量列表 color_map (dict): 内容类型与颜色的映射 Returns: Pie: pyecharts Pie 图表对象

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

Source from the content-addressed store, hash-verified

107 return bar
108
109def create_pie_chart(articles, projects, audio_video, hot_topics, books, color_map):
110 """
111 创建饼图,展示一个季度内容的整体分布
112
113 Args:
114 articles (list): 文章数量列表
115 projects (list): 项目数量列表
116 audio_video (list): 音视频数量列表
117 hot_topics (list): 讨论话题数量列表
118 books (list): 赠书数量列表
119 color_map (dict): 内容类型与颜色的映射
120
121 Returns:
122 Pie: pyecharts Pie 图表对象
123 """
124 pie = Pie(init_opts=opts.InitOpts(theme=ThemeType.ESSOS))
125 categories = ['文章', '项目', '音视频', '讨论', '赠书']
126 total_counts = [sum(articles), sum(projects), sum(audio_video), sum(hot_topics), sum(books)]
127 category_colors = [color_map.get(category, "#000000") for category in categories]
128 pie.add(
129 "",
130 [list(z) for z in zip(categories, total_counts)],
131 radius="66%",
132 label_opts=opts.LabelOpts(formatter="{c} ({d}%)"),
133 itemstyle_opts={
134 "color": JsCode("""
135 function(params) {
136 var colorList = """ + str(category_colors) + """;
137 return colorList[params.dataIndex];
138 }
139 """)
140 }
141 )
142 return pie
143
144def create_echarts_tab(data, start, end, bar_tab, pie_tab, wc_tab, tab_name):
145 """

Callers 1

create_echarts_tabFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected