生成图表文件,在py文件中修改html模版

from pyecharts import options as opts
from pyecharts.charts import Scatter, Bar
from pyecharts.faker import Faker
from pyecharts.globals import ThemeType, RenderType

# 导入主题包

# c = Bar(
#     init_opts=opts.InitOpts(
#         theme=ThemeType.DARK,
#         width='100%',
#         height='400px',  # 画布大小
#         bg_color='black',
#         animation_opts=opts.AnimationOpts(animation=False),  # 禁用动画
#         renderer=RenderType.CANVAS,
#         page_title='CINDEELLA',
#         js_host="./"#第二种方法
#     ))
# # c.js_host="./"#第一种方法
# c.add_xaxis(Faker.choose())
# c.add_yaxis("系列一", Faker.values(),gap="11%",stack=True) #  堆叠 间距 category_gap="50%"
# c.add_yaxis("系列二", Faker.values(),gap="11%")
# c.add_yaxis("系列三", Faker.values(),gap="11%")
# c.set_global_opts(
#     title_opts=opts.TitleOpts(title="山西省", subtitle="太原市", pos_left="20px",
#                               title_textstyle_opts=opts.TextStyleOpts(font_size=15)),
#     legend_opts=opts.LegendOpts(selected_mode="multiple")#single
#
# )
# 或者
# .set_global_opts(
#     title_opts={'text': '山西省', 'subtext': '太原市'},
# )

#

# c = (
#     Scatter(init_opts=opts.InitOpts(js_host="./",width='100%',height='400px',theme=ThemeType.DARK,),
#
#             # 画布大小
#             )
#     .add_xaxis(Faker.clothes)
#     .add_yaxis("销售", [(x, y) for x, y in zip(Faker.values(), Faker.values())])
#
#     # .reversal_axis()#翻转XY轴
#     .set_global_opts(
#
#         xaxis_opts=opts.AxisOpts(
#             name="商家名称",
#             axislabel_opts=opts.LabelOpts(rotate=15),  # 倾斜 斜体
#             axistick_opts=opts.AxisTickOpts(is_inside=True, length=10),  # 刻度
#             axispointer_opts=opts.AxisPointerOpts(is_show=True, type_="line"),  # 线条
#             splitline_opts=opts.SplitLineOpts(is_show=False),
#             # 取消网格
#         ),
#
#         yaxis_opts=opts.AxisOpts(splitline_opts=opts.SplitLineOpts(is_show=False)),  # 取消网格
#
#         visualmap_opts=opts.VisualMapOpts(type_="color",
#                                           range_text=["最大值", "最小值"]),  # color size range_text  range_color
#         # tooltip_opts=opts.TooltipOpts(
#         #     formatter=JsCode("function(params){return params.value}")
#         datazoom_opts=opts.DataZoomOpts(is_show=True, type_="inside", xaxis_index=[0], range_start=0, range_end=100),
#         # )
#     )
#
# )
# print(help(opts.InitOpts))






###########################################################
html_file = "bar3.html"
c.render(html_file)

# 打开并修改模板文件
with open(html_file, 'r') as file:
    content = file.read()

# 向 <head> 标签中添加额外的代码
extra_code_head = """
    <style>
        html,
        body {
            width: 100%;
            height: 100%;
            margin: 0;
            overflow: hidden;
        }
    </style>
"""
head_content = content.replace('</head>',extra_code_head + '</head>')
# 向 <script> 标签中添加额外的代码
extra_code_script = """
window.addEventListener('resize', myChart.resize);
"""
split_content = head_content.rsplit('</script>', maxsplit=1)
script_content = (extra_code_script+'</script>').join(split_content)

# 保存修改后的模板文件
with open(html_file, 'w') as file:
    file.write(script_content)

print('模版文件修改成功!')



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值