用pyecharts做了两个可视化的图

第一段代码,是做的一个折线图

from pyecharts.options.series_options import LineStyleOpts
import xlrd
data = xlrd.open_workbook(r'E:\y python\\Income and expenditure.xlsx')
table = data.sheets()[0]
print(table)
x_datas=[]#用来表示横坐标
As=[]
Bs=[]
for i in range(1,13):

    x_data=table.row_values(i)[0]
    x_datas.append(x_data)

    A=table.row_values(i)[1]
    As.append(A)
    B=table.row_values(i)[2]
    Bs.append(B)
    
print(x_datas)
print(As)
print(Bs)

import pyecharts.options as opts
from pyecharts.charts import Line
(
    Line()
    .add_xaxis(xaxis_data=x_datas)
    .add_yaxis(
        series_name="收入",
        y_axis=As,
        label_opts=opts.LabelOpts(is_show=True),
    )
    .add_yaxis(
        series_name="支出",
        y_axis=Bs,
        label_opts=opts.LabelOpts(is_show=True),
    )
    .set_global_opts(
        title_opts=opts.TitleOpts(
            title="收入支出对比",
            title_textstyle_opts=opts.TextStyleOpts(
                color="black",
                font_style="italic",
                font_size="20",
                font_weight="bolder"
            )
        ),
        yaxis_opts=opts.AxisOpts(
            name="金额",
            name_textstyle_opts=opts.TextStyleOpts(
                color="red",
                font_size="10",
            ) 
                       
        ),
        xaxis_opts=opts.AxisOpts(
            name="年份", 
            axislabel_opts={"rotate":45},
            name_textstyle_opts=opts.TextStyleOpts(
                color="green",
                font_size="10",
            )
            
        ),
        tooltip_opts=opts.TooltipOpts(
            is_show=True,
        )
        
    )
    .render("text.html")
)

第二段代码是做一个柱状图

from pyecharts.options.series_options import LineStyleOpts
import xlrd
data = xlrd.open_workbook(r'E:\y python\\products.xlsx')
table = data.sheets()[0]
print(table)
x_datas=[]
As=[]
Bs=[]
Cs=[]
Ds=[]
for i in range(1,6):
    x_data=table.col_values(i)[0]
    x_datas.append(x_data)
    A=table.col_values(i)[1]
    As.append(A)
    B=table.col_values(i)[2]
    Bs.append(B)
    C=table.col_values(i)[3]
    Cs.append(C)
    D=table.col_values(i)[4]
    Ds.append(D)

from pyecharts import options as opts
from pyecharts.charts import Bar
from pyecharts.faker import Faker
(
    Bar()
    .add_xaxis(xaxis_data=x_datas)
    .add_yaxis(
        series_name="A产品销量",
        y_axis=As,
        label_opts=opts.LabelOpts(is_show=True),
    )
    .add_yaxis(
        series_name="B产品销量",
        y_axis=Bs,
        label_opts=opts.LabelOpts(is_show=True),
    )
    .add_yaxis(
        series_name="C产品销量",
        y_axis=Cs,
        label_opts=opts.LabelOpts(is_show=True),
    )
    .add_yaxis(
        series_name="D产品销量",
        y_axis=Ds,
        label_opts=opts.LabelOpts(is_show=True),
    )
        .set_global_opts(
        title_opts=opts.TitleOpts(
            title="各年份不同产品销量对比",
            title_textstyle_opts=opts.TextStyleOpts(
                color="black",
                font_style="italic",
                font_size="20",
                font_weight="bolder"
            )
        ),
        yaxis_opts=opts.AxisOpts(
            name="销量/万吨",
            name_textstyle_opts=opts.TextStyleOpts(
                color="purple",
                font_size="15",
            ) 
                       
        ),
        xaxis_opts=opts.AxisOpts(
            name="年份/年", 
            axislabel_opts={"rotate":45},
            name_textstyle_opts=opts.TextStyleOpts(
                color="pink",
                font_size="15",
            )
            
        ),
        tooltip_opts=opts.TooltipOpts(
            is_show=True,
        )
        
    )
    .render("test.html")
)

总结:python 的pyecharts还是很好用的,就是官方文档写的太杂乱了,很多东西其实用不到的,我个人对属性不太了解,就导致不是在找属性,就是找属性的路上。做第一个的时候花费我很长时间,但是有了第一个的基础,做第二个就容易多了,了解了基本常用的属性之后,做个普通的图表还是没啥问题的

哦对,两个效果图

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值