news 2026/4/15 13:45:56

Python学习之使用pycharts

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python学习之使用pycharts

简介:

通过读取【charts_demo.xlsx】文件数据,使用pycharts生成名为【page_simple_layout.html】的HTML图表。

from pyecharts.charts import Bar,Page from pyecharts import options as opts from openpyxl import load_workbook import numpy as np import math from pyecharts.globals import ThemeType import os #split the arr into N chunks def chunks(arr, m): n = int(math.ceil(len(arr) / float(m))) return [arr[i:i + n] for i in range(0, len(arr), n)] def build_bar(): hor_num = ws['C5'].value ord_num = ws['C4'].value xtype=[] xline=[] yline=[] yline2=[[]] for col in ws.iter_cols(min_col=8, max_col=8+ord_num-1, min_row=3, max_row=3): for cell in col: xtype.append(cell.value) for col in ws.iter_cols(min_col=7, max_col=7, min_row=4, max_row=hor_num+3): for cell in col: xline.append(cell.value) for col in ws.iter_cols(min_col=8, max_col=8+ord_num-1, min_row=4, max_row=hor_num+3): for cell in col: yline.append(format((cell.value),'.0f'))#yline.append(format((cell.value),'.1f')) yline2 = chunks(yline,ord_num) #print(xtype) #print(xline) #print(yline) #print(yline2) bar2 = Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT,width='1200px')) #修改源文件使保存的图片背景为白色 opts.ToolBoxFeatureSaveAsImageOpts(background_color="white") bar2.add_xaxis(xline) j=0 for i in yline2: bar2.add_yaxis(xtype[j],i) j=j+1 if j>3: j=0 bar2.set_global_opts( title_opts=opts.TitleOpts(title=str(ws['G3'].value)), tooltip_opts=opts.TooltipOpts(trigger="axis"), toolbox_opts=opts.ToolboxOpts(is_show=True,feature=opts.ToolBoxFeatureOpts(save_as_image=opts.ToolBoxFeatureSaveAsImageOpts(background_color="#F7F7F7"))), xaxis_opts=opts.AxisOpts(type_="category", boundary_gap=True), #datazoom_opts=opts.DataZoomOpts(range_start=10,range_end=90), # 坐标轴进行缩放 ) return bar2 excel_name = "charts_demo.xlsx" html_name = "page_simple_layout.html" if __name__=='__main__': current_path = os.getcwd() excel_path = current_path+"\\"+excel_name html_patch = current_path+"\\"+html_name wb = load_workbook(excel_path, data_only=True) ws=wb['Sheet1'] # 简单布局 page = Page(layout=Page.SimplePageLayout) # 将上面定义好的图添加到 page page.add(build_bar()) page.render(html_patch) print('finish')

通过指定单元格G3的内容为图表名称,指定纵坐标个数【语文、数学、总分】,横坐标个数【张三、李四、王五、赵六、孙七、周八、吴九】:

运行py程序后,可以通过右上角一排按钮转换为折线图、柱状图,保存图片等。效果如下:

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/15 5:47:33

SUNNOD打印机维护测试卡:终极防堵头解决方案

SUNNOD打印机维护测试卡:终极防堵头解决方案 【免费下载链接】SUNNOD标准打印测试色卡-PDF版 本仓库提供了一个名为“SUNNOD标准打印测试色卡-PDF版”的资源文件下载。该文件专为喷墨打印机设计,每周打印一次原图,有助于预防打印机堵头问题 …

作者头像 李华
网站建设 2026/4/14 10:48:58

ESP32音频开发:如何实现多格式音频播放的完整解决方案?

ESP32音频开发:如何实现多格式音频播放的完整解决方案? 【免费下载链接】ESP32-audioI2S Play mp3 files from SD via I2S 项目地址: https://gitcode.com/gh_mirrors/es/ESP32-audioI2S 在物联网设备日益普及的今天,音频功能已成为智…

作者头像 李华
网站建设 2026/4/15 5:47:27

Cakebrew:让macOS包管理变得像吃蛋糕一样简单 [特殊字符]

Cakebrew:让macOS包管理变得像吃蛋糕一样简单 🍰 【免费下载链接】Cakebrew Manage your Homebrew formulas with style using Cakebrew. 项目地址: https://gitcode.com/gh_mirrors/ca/Cakebrew 还在为复杂的命令行操作而烦恼吗?Cake…

作者头像 李华
网站建设 2026/4/15 7:18:21

HTML转Figma终极指南:从网页到设计稿的完整转换教程

在当今快节奏的设计环境中,你是否经常需要将现有的网页设计快速转换为Figma设计文件?HTML转Figma工具正是为这一需求而生,它能够将任意网页瞬间转换为可编辑的Figma设计稿,大幅提升设计效率和工作流程。 【免费下载链接】figma-ht…

作者头像 李华
网站建设 2026/4/15 7:18:44

UIE-PyTorch信息抽取实战:从业务痛点到技术落地

UIE-PyTorch信息抽取实战:从业务痛点到技术落地 【免费下载链接】uie_pytorch PaddleNLP UIE模型的PyTorch版实现 项目地址: https://gitcode.com/gh_mirrors/ui/uie_pytorch 面对海量非结构化文本数据,传统的信息抽取方案往往面临标注成本高、模…

作者头像 李华
网站建设 2026/4/15 7:19:04

全球高频喷射呼吸机市场分析:年复合增长率为7.29%

高频喷射呼吸机是一种采用高频、低压、小潮气量脉冲式气流进行通气支持的呼吸治疗设备。其核心原理是通过电磁或气动阀高速开闭,将高压气源切割成频率通常为60-600次/分钟的高速喷射气流,经细孔导管送入患者气道。该技术利用气体对流、湍流扩散等效应完成…

作者头像 李华