Esempio n. 1
0
    def write_xlsx(self, sheet: Worksheet, father):
        graph1 = bar_and_plot(
            category=self.year_list,
            bar_param=[
                [father.cash_data.get_sheet(year).data["net_cash_op"] for year in self.year_list],
                "经营现金流"
            ],
            plot_param=[
                [self.get_indicator(year).data["operating_cash_growth_rate"] for year in self.year_list],
                "经营现金增长率"
            ]
        )
        sheet.insert_image(0, 0, "", {"image_data": graph1})

        graph2 = img_draw(
            category=self.year_list,
            plot_params=[
                [
                    [father.dev_data.get_indicator(year).data["sales_growth_rate"] for year in self.year_list],
                    "销售增长率",
                    1
                ],
                [
                    [self.get_indicator(year).data["operating_cash_growth_rate"] for year in self.year_list],
                    "经营现金增长率",
                    1
                ]
            ]
        )
        sheet.insert_image(20, 0, "", {"image_data": graph2})

        graph3 = bar_and_plot(
            category=self.year_list,
            bar_param=[
                [father.cash_data.get_sheet(year).data["final_cash"] for year in self.year_list],
                "期末现金流"
            ],
            plot_param=[
                [self.get_indicator(year).data["cash_flow_growth_rate"] for year in self.year_list],
                "现金流量增长率"
            ]
        )
        sheet.insert_image(40, 0, "", {"image_data": graph3})

        graph4 = bar_and_plot(
            category=self.year_list,
            bar_param=[
                [self.get_indicator(year).data["free_cash_ratio"] for year in self.year_list],
                "自由现金流"
            ],
            plot_param=[
                [self.get_indicator(year).data["sales_and_operating_cash_ratio"] for year in self.year_list],
                "销售自由现金比"
            ]
        )
        sheet.insert_image(60, 0, "", {"image_data": graph4})

        graph5 = img_draw(
            category=self.year_list,
            plot_params=[
                [
                    [self.get_indicator(year).data["sales_and_operating_cash_ratio"] for year in self.year_list],
                    "销售经营现金比",
                    1
                ]
            ]
        )
        sheet.insert_image(80, 0, "", {"image_data": graph5})

        graph6 = img_draw(
            category=self.year_list,
            plot_params=[
                [
                    [self.get_indicator(year).data["sales_cash_ratio"] for year in self.year_list],
                    "销售现金比",
                    1
                ]
            ]
        )
        sheet.insert_image(100, 0, "", {"image_data": graph6})
Esempio n. 2
0
    def write_xlsx(self, sheet: Worksheet, father):
        graph1 = bar_and_plot(
            category=self.year_list,
            bar_param=[[
                father.profit_data.get_sheet(year).data["selling_expenses"]
                for year in self.year_list
            ], "销售费用"],
            plot_param=[[
                self.get_indicator(year).data["sales_expense_rate"]
                for year in self.year_list
            ], "销售费用率"])
        sheet.insert_image(0, 0, "", {"image_data": graph1})

        graph2 = bar_and_plot(
            category=self.year_list,
            bar_param=[[
                father.profit_data.get_sheet(year).data["management_fees"]
                for year in self.year_list
            ], "管理费用"],
            plot_param=[[
                self.get_indicator(year).data["management_fee_rate"]
                for year in self.year_list
            ], "管理费用率"])
        sheet.insert_image(20, 0, "", {"image_data": graph2})

        graph3 = bar_and_plot(
            category=self.year_list,
            bar_param=[[
                (father.profit_data.get_sheet(year).data["management_fees"] +
                 father.profit_data.get_sheet(year).data["selling_expenses"])
                for year in self.year_list
            ], "销售费用+管理费用"],
            plot_param=[[
                self.get_indicator(year).data["sales_management_fee_rate"]
                for year in self.year_list
            ], "销售管理费用率"])
        sheet.insert_image(40, 0, "", {"image_data": graph3})

        graph4 = bar_and_plot(
            category=self.year_list,
            bar_param=[[
                (father.profit_data.get_sheet(year).data["management_fees"] +
                 father.profit_data.get_sheet(year).data["selling_expenses"] +
                 father.profit_data.get_sheet(year).data["financial_expenses"])
                for year in self.year_list
            ], "期间费用"],
            plot_param=[[
                self.get_indicator(year).data["period_expense_rate"]
                for year in self.year_list
            ], "期间费用率"])
        sheet.insert_image(60, 0, "", {"image_data": graph4})

        graph5 = bar_and_plot(
            category=self.year_list,
            bar_param=[[
                father.balance_data.get_sheet(year).data["total_assets"]
                for year in self.year_list
            ], "资产总计"],
            plot_param=[[
                self.get_indicator(year).data["asset_turnover_days"]
                for year in self.year_list
            ], "资产周转天数"],
            use_percent=False)
        sheet.insert_image(80, 0, "", {"image_data": graph5})

        graph6 = bar_and_plot(
            category=self.year_list,
            bar_param=[[
                father.balance_data.get_sheet(year).data["accounts_receivable"]
                for year in self.year_list
            ], "应收账款"],
            plot_param=[[
                self.get_indicator(
                    year).data["accounts_receivable_turnover_days"]
                for year in self.year_list
            ], "应收账款周转天数"],
            use_percent=False)
        sheet.insert_image(100, 0, "", {"image_data": graph6})

        graph7 = bar_and_plot(
            category=self.year_list,
            bar_param=[[
                father.balance_data.get_sheet(year).data["stock"]
                for year in self.year_list
            ], "存货"],
            plot_param=[[
                self.get_indicator(year).data["inventory_turnover_days"]
                for year in self.year_list
            ], "存货周转天数"],
            use_percent=False)
        sheet.insert_image(120, 0, "", {"image_data": graph7})

        graph8 = img_draw(category=self.year_list,
                          plot_params=[[[
                              self.get_indicator(year).data["business_cycle"]
                              for year in self.year_list
                          ], "营业周期", 1]],
                          use_percent=False)
        sheet.insert_image(140, 0, "", {"image_data": graph8})

        graph9 = img_draw(
            category=self.year_list,
            plot_params=[[[
                self.get_indicator(year).data["repayment_rate_of_sales"]
                for year in self.year_list
            ], "销售回款率", 1]])
        sheet.insert_image(160, 0, "", {"image_data": graph9})
Esempio n. 3
0
    def write_xlsx(self, sheet: Worksheet, father):
        graph1 = img_draw(
            category=self.year_list,
            plot_params=[[[
                self.get_indicator(year).data["sales_gross_margin"]
                for year in self.year_list
            ], "销售毛利率", 1]])
        sheet.insert_image(0, 0, "", {"image_data": graph1})

        graph2 = img_draw(
            category=self.year_list,
            plot_params=[[[
                self.get_indicator(year).data["sales_operating_profit_margin"]
                for year in self.year_list
            ], "销售营业利润率", 1]])
        sheet.insert_image(20, 0, "", {"image_data": graph2})

        graph3 = img_draw(category=self.year_list,
                          plot_params=[[[
                              self.get_indicator(year).data["sales_margin"]
                              for year in self.year_list
                          ], "销售净利率", 1]])
        sheet.insert_image(40, 0, "", {"image_data": graph3})

        graph4 = img_draw(
            category=self.year_list,
            plot_params=[[[
                self.get_indicator(year).data["sales_gross_margin"]
                for year in self.year_list
            ], "销售毛利率", 1],
                         [[
                             self.get_indicator(
                                 year).data["sales_operating_profit_margin"]
                             for year in self.year_list
                         ], "销售营业利润率", 1],
                         [[
                             self.get_indicator(year).data["sales_margin"]
                             for year in self.year_list
                         ], "销售净利率", 1]])
        sheet.insert_image(60, 0, "", {"image_data": graph4})

        graph5 = img_draw(category=self.year_list,
                          plot_params=[[[
                              self.get_indicator(year).data["roe"]
                              for year in self.year_list
                          ], "净资产收益率", 1]])
        sheet.insert_image(80, 0, "", {"image_data": graph5})

        graph6 = img_draw(category=self.year_list,
                          plot_params=[[[
                              self.get_indicator(year).data["return_on_assets"]
                              for year in self.year_list
                          ], "资产报酬率", 1]])
        sheet.insert_image(100, 0, "", {"image_data": graph6})

        graph7 = img_draw(
            category=self.year_list,
            plot_params=[[[
                self.get_indicator(year).data["roe"] for year in self.year_list
            ], "净资产收益率", 1],
                         [[
                             self.get_indicator(year).data["return_on_assets"]
                             for year in self.year_list
                         ], "资产报酬率", 1]])
        sheet.insert_image(120, 0, "", {"image_data": graph7})

        graph8 = img_draw(
            category=self.year_list,
            plot_params=[[[
                self.get_indicator(year).data["earnings_per_share"]
                for year in self.year_list
            ], "每股收益", 1]])
        sheet.insert_image(140, 0, "", {"image_data": graph8})

        graph9 = img_draw(
            category=self.year_list,
            plot_params=[[[
                self.get_indicator(
                    year).data["capital_operating_rate_of_return"]
                for year in self.year_list
            ], "资本运营收益率", 1]])
        sheet.insert_image(160, 0, "", {"image_data": graph9})
Esempio n. 4
0
    def write_xlsx(self, sheet: Worksheet, father):
        """
        insert the image to the work sheet
        :param sheet: the Worksheet instance
        :param father: the Company instance to share the data betweeen different sheets and indicators
        :return:
        """
        graph1 = bar_and_plot(
            category=self.year_list,
            bar_param=[[
                father.profit_data.get_sheet(year).data["operating_income"]
                for year in self.year_list
            ], "营业收入"],
            plot_param=[[
                self.get_indicator(year).data["sales_growth_rate"]
                for year in self.year_list
            ], "销售增长率"])
        sheet.insert_image(0, 0, "", {"image_data": graph1})

        graph2 = bar_and_plot(
            category=self.year_list,
            bar_param=[[
                father.balance_data.get_sheet(year).data["total_assets"]
                for year in self.year_list
            ], "资产总计"],
            plot_param=[[
                self.get_indicator(year).data["asset_growth_rate"]
                for year in self.year_list
            ], "资产增长率"])
        sheet.insert_image(19, 0, "", {"image_data": graph2})

        graph3 = img_draw(
            category=self.year_list,
            plot_params=[[[
                self.get_indicator(year).data["sales_growth_rate"]
                for year in self.year_list
            ], "销售增长率", 1],
                         [[
                             self.get_indicator(year).data["asset_growth_rate"]
                             for year in self.year_list
                         ], "资产增长率", 1]])
        sheet.insert_image(39, 0, "", {"image_data": graph3})

        graph4 = bar_and_plot(
            category=self.year_list,
            bar_param=[[
                father.profit_data.get_sheet(year).data["net_profit"]
                for year in self.year_list
            ], "净利润"],
            plot_param=[[
                self.get_indicator(year).data["net_profit_growth_rate"]
                for year in self.year_list
            ], "净利润增长率"])
        sheet.insert_image(59, 0, "", {"image_data": graph4})

        graph5 = img_draw(
            category=self.year_list,
            plot_params=[[[
                self.get_indicator(year).data["net_profit_growth_rate"]
                for year in self.year_list
            ], "净利润增长率", 1],
                         [[
                             self.get_indicator(year).data["sales_growth_rate"]
                             for year in self.year_list
                         ], "销售收入增长率", 1]])
        sheet.insert_image(79, 0, "", {"image_data": graph5})

        graph6 = bar_and_plot(
            category=self.year_list,
            bar_param=[[
                father.balance_data.get_sheet(year).data["owners_equity"]
                for year in self.year_list
            ], "净资产"],
            plot_param=[[
                self.get_indicator(year).data["net_asset_growth_rate"]
                for year in self.year_list
            ], "净资产增长率"])
        sheet.insert_image(99, 0, "", {"image_data": graph6})

        graph7 = img_draw(
            category=self.year_list,
            plot_params=[
                [[
                    self.get_indicator(year).data["asset_growth_rate"]
                    for year in self.year_list
                ], "资产增长率", 1],
                [[
                    self.get_indicator(year).data["net_asset_growth_rate"]
                    for year in self.year_list
                ], "净资产增长率", 1]
            ])
        sheet.insert_image(119, 0, "", {"image_data": graph7})

        graph8 = bar_and_plot(
            category=self.year_list,
            bar_param=[[
                father.balance_data.get_sheet(year).data["fixed_assetes"]
                for year in self.year_list
            ], "固定资产"],
            plot_param=[[
                self.get_indicator(year).data["fixed_asset_growth_rate"]
                for year in self.year_list
            ], "固定资产增长率"])
        sheet.insert_image(139, 0, "", {"image_data": graph8})

        graph9 = img_draw(
            category=self.year_list,
            plot_params=[
                [[
                    self.get_indicator(year).data["asset_growth_rate"]
                    for year in self.year_list
                ], "资产增长率", 1],
                [[
                    self.get_indicator(year).data["fixed_asset_growth_rate"]
                    for year in self.year_list
                ], "固定资产增长率", 1]
            ])
        sheet.insert_image(159, 0, "", {"image_data": graph9})
Esempio n. 5
0
    def write_xlsx(self, sheet: Worksheet, father):
        graph1 = img_draw(
            category=self.year_list,
            plot_params=[
                [
                    [self.get_indicator(year).data["assets_and_liabilities"] for year in self.year_list],
                    "资产负债率",
                    1
                ],
                [
                    [0.4] * len(self.year_list),
                    "下限值",
                    1
                ],
                [
                    [0.6] * len(self.year_list),
                    "上限值",
                    1
                ]
            ]
        )
        sheet.insert_image(0, 0, "", {"image_data": graph1})

        graph2 = img_draw(
            category=self.year_list,
            plot_params=[
                [
                    [self.get_indicator(year).data["current_ratio"] for year in self.year_list],
                    "流动比率",
                    1
                ],
                [
                    [1.5] * len(self.year_list),
                    "合理值",
                    1
                ],
                [
                    [2] * len(self.year_list),
                    "最佳值",
                    1
                ]
            ],
            use_percent=False
        )
        sheet.insert_image(20, 0, "", {"image_data": graph2})

        graph3 = img_draw(
            category=self.year_list,
            plot_params=[
                [
                    [self.get_indicator(year).data["quick_ratio"] for year in self.year_list],
                    "速动比率",
                    1
                ],
                [
                    [1] * len(self.year_list),
                    "最低值",
                    1
                ],
                [
                    [1.5] * len(self.year_list),
                    "合理值",
                    1
                ]
            ],
            use_percent=False
        )
        sheet.insert_image(40, 0, "", {"image_data": graph3})