电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Python openpyxl 插入折線圖實(shí)例

瀏覽:2日期:2022-07-29 15:41:41

我就廢話不多說(shuō)了,還是直接看代碼吧!

import osimport openpyxlfrom datetime import datefrom openpyxl import Workbookfrom openpyxl.chart import ( Series, LineChart, Reference,)def add_line_chart(title, wss, min_col, min_row, max_col, max_row): c1 = LineChart() c1.title = title # 圖的標(biāo)題 c1.style = 12 # 線條的style c1.y_axis.title = ’percent’ # y坐標(biāo)的標(biāo)題 if ’IDC’ not in title: c1.x_axis.number_format = ’d-mmm’ # 規(guī)定日期格式 這是月,年格式 c1.x_axis.majorTimeUnit = 'Months' # 規(guī)定日期間隔 注意days;Months大寫 c1.x_axis.title = 'Date' # x坐標(biāo)的標(biāo)題 data = Reference(wss, min_col=min_col, min_row=min_row, max_col=max_col, max_row=max_row) # 圖像的數(shù)據(jù) 起始行、起始列、終止行、終止列 c1.add_data(data, titles_from_data=True, from_rows=True) dates = Reference(wss, min_col=2, min_row=1, max_col=max_col) c1.set_categories(dates) wss.add_chart(c1, 'A6') # 將圖表添加到 sheet中def save_data_to_excel(file_name, target_sheet_name): select_cursor = connect.cursor() select_sql = 'select phone_company, record_date, record_percent from phone_statistics where record_company = ’%s’' % target_sheet_name if target_sheet_name == 'IDC': select_sql = 'select phone_company, record_q, record_percent from phone_statistics where record_company = ’%s’' % target_sheet_name select_cursor.execute(select_sql, ()) data_dic = {} all_date = {} all_phone_company = {} for item in select_cursor: if target_sheet_name == 'IDC': data_dic[item[0] + ’_’ + item[1]] = item[2] else: if type(item[1]) == str: data_dic[item[0] + ’_’ + item[1]] = item[2] else: data_dic[item[0] + ’_’ + item[1].strftime('%Y-%m-%d')] = item[2] all_date[item[1]] = 1 all_phone_company[item[0]] = 1 if os.path.exists(file_name): wb = openpyxl.load_workbook(file_name) else: wb = Workbook() try: wb.remove_sheet(wb[’Sheet’]) except Exception as e: pass try: wb.remove_sheet(wb[target_sheet_name]) except Exception as e: pass try: sheet = wb[target_sheet_name] except Exception as e: sheet = wb.create_sheet() start_date_index = ’B’ for each_date in all_date.keys(): if target_sheet_name == 'IDC': sheet[’%s1’ % start_date_index] = each_date else: if type(each_date) == str: sheet[’%s1’ % start_date_index] = each_date else: sheet[’%s1’ % start_date_index] = each_date.strftime('%Y-%m-%d') start_date_index = chr(ord(start_date_index) + 1) start_name_index = 2 for each_name in all_phone_company.keys(): sheet[’A%d’ % start_name_index] = each_name start_name_index += 1 start_date_index = ’B’ start_name_index = 2 for each_date in all_date.keys(): for each_name in all_phone_company.keys(): if target_sheet_name == 'IDC': key = each_name + ’_’ + each_date if key in data_dic: sheet[’%s%d’ % (start_date_index, start_name_index)] = data_dic[key] else: if type(each_date) == str: key = each_name + ’_’ + each_date else: key = each_name + ’_’ + each_date.strftime('%Y-%m-%d') if key in data_dic: sheet[’%s%d’ % (start_date_index, start_name_index)] = data_dic[key] start_name_index += 1 start_date_index = chr(ord(start_date_index) + 1) start_name_index = 2 sheet.title = target_sheet_name sheet.column_dimensions[’A’].width = 20 start_date_index = ’B’ for each_date in all_date.keys(): sheet.column_dimensions[start_date_index].width = 13 start_date_index = chr(ord(start_date_index) + 1) add_line_chart(target_sheet_name.upper() + '’s Phone Statistics', sheet, 1, 2, len(all_date.keys()) + 1, min(15, len(all_phone_company.keys()) + 1)) wb.save(file_name) pass

Python openpyxl 插入折線圖實(shí)例

補(bǔ)充知識(shí):python plotly line chart 折線圖

我就廢話不多說(shuō)了,還是直接看代碼吧!

# 1 折線圖數(shù)據(jù)# trace1 - 基本格式# trace2 - 更多參數(shù)trace1 = go.Scatter( x = x1, y = y2,)trace2 = go.Scatter( x = x2, y = y2, mode = ’lines’, # 模式:lines 線,markers 點(diǎn)。可用“+”相連 name = ’line2’, # 折線名,顯示于圖例 connectgaps = True # 連接缺失點(diǎn)兩端 默認(rèn)False line = dict( color = (’rgb(205, 12, 24)’), # 顏色 width = 4, #線寬 dash = ’dash’) # 虛線: dash 一一,dot ···,dashdot 一·一) )# 2 打包數(shù)據(jù)data = [trace1,trace2]# 3 格式layout = dict(title = ’折線’, xaxis = dict(title = ’時(shí)間’), # 橫軸坐標(biāo) yaxis = dict(title = ’數(shù)量’), # 總軸坐標(biāo) legend=dict(x=1.1,y=1) # 圖例位置 )# 4 打包數(shù)據(jù)+格式fig = dict(data=data, layout=layout)# 5 畫圖py.iplot(fig, filename=’styled-line’)

以上這篇Python openpyxl 插入折線圖實(shí)例就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 网站建设-网站制作-网站设计-网站开发定制公司-网站SEO优化推广-咏熠软件 | 磁粉制动器|张力控制器|气胀轴|伺服纠偏控制器整套厂家--台灵机电官网 | 动库网动库商城-体育用品专卖店:羽毛球,乒乓球拍,网球,户外装备,运动鞋,运动包,运动服饰专卖店-正品运动品网上商城动库商城网 - 动库商城 | 涿州网站建设_网站设计_网站制作_做网站_固安良言多米网络公司 | 首页_欧瑞传动官方网站--主营变频器、伺服系统、新能源、软起动器、PLC、HMI | 双齿辊破碎机-大型狼牙破碎机视频-对辊破碎机价格/型号图片-金联机械设备生产厂家 | 恒压供水控制柜|无负压|一体化泵站控制柜|PLC远程调试|MCGS触摸屏|自动控制方案-联致自控设备 | 智能门锁电机_智能门锁离合器_智能门锁电机厂家-温州劲力智能科技有限公司 | 直线模组_滚珠丝杆滑台_模组滑台厂家_万里疆科技 | 阴离子聚丙烯酰胺价格_PAM_高分子聚丙烯酰胺厂家-河南泰航净水材料有限公司 | 代办建筑资质升级-建筑资质延期就找上海国信启航| 智能气瓶柜(大型气瓶储存柜)百科| 体视显微镜_荧光生物显微镜_显微镜报价-微仪光电生命科学显微镜有限公司 | 微型实验室真空泵-无油干式真空泵-微型涡旋耐腐蚀压缩机-思科涡旋科技(杭州)有限公司 | 流量检测仪-气密性检测装置-密封性试验仪-东莞市奥图自动化科技有限公司 | 临沂招聘网_人才市场_招聘信息_求职招聘找工作请认准【马头商标】 | 无压烧结银_有压烧结银_导电银胶_导电油墨_导电胶-善仁(浙江)新材料 | 中式装修设计_全屋定制家具_实木仿古门窗花格厂家-喜迎门 | 河南砖机首页-全自动液压免烧砖机,小型砌块水泥砖机厂家[十年老厂] | 3dmax渲染-效果图渲染-影视动画渲染-北京快渲科技有限公司 | 周口风机|周风风机|河南省周口通用风机厂 | 橡胶膜片,夹布膜片,橡胶隔膜密封,泵阀设备密封膜片-衡水汉丰橡塑科技公司网站 | 光栅尺厂家_数显表维修-苏州泽升精密机械 | 闭端端子|弹簧螺式接线头|防水接线头|插线式接线头|端子台|电源线扣+护线套|印刷电路板型端子台|金笔电子代理商-上海拓胜电气有限公司 | 氧化锆陶瓷_氧化锆陶瓷加工_氧化锆陶瓷生产厂家-康柏工业陶瓷有限公司 | 塑料托盘厂家直销-吹塑托盘生产厂家-力库塑业【官网】 | 穿线管|波纹穿线管|包塑金属软管|蛇皮管?闵彬专注弱电工程? | 湖北省煤炭供应链综合服务平台| 拉力机-拉力试验机-万能试验机-电子拉力机-拉伸试验机-剥离强度试验机-苏州皖仪实验仪器有限公司 | 富森高压水枪-柴油驱动-养殖场高压清洗机-山东龙腾环保科技有限公司 | 客服外包专业服务商_客服外包中心_网萌科技| 工程管道/塑料管材/pvc排水管/ppr给水管/pe双壁波纹管等品牌管材批发厂家-河南洁尔康建材 | 苗木价格-苗木批发-沭阳苗木基地-沭阳花木-长之鸿园林苗木场 | 法兰连接型电磁流量计-蒸汽孔板节流装置流量计-北京凯安达仪器仪表有限公司 | 接地电阻测试仪[厂家直销]_电缆故障测试仪[精准定位]_耐压测试仪-武汉南电至诚电力设备 | 旋转/数显粘度计-运动粘度测定仪-上海平轩科学仪器 | 翅片管散热器价格_钢制暖气片报价_钢制板式散热器厂家「河北冀春暖气片有限公司」 | 脱硝喷枪-氨水喷枪-尿素喷枪-河北思凯淋环保科技有限公司 | 钢木实验台-全钢实验台-化验室通风柜-实验室装修厂家-杭州博扬实验设备 | 首页 - 张店继勇软件开发工作室 兰州UPS电源,兰州山特UPS-兰州万胜商贸 | 炉门刀边腹板,焦化设备配件,焦化焦炉设备_沧州瑞创机械制造有限公司 |