Exemple #1
0
 def cr_ui_chart_panel_show(self,
                            chart_obj,
                            closable=False,
                            width=640,
                            height=480,
                            pos_x=400,
                            pos_y=300):
     """
     展示图表
     :param chart_obj: 实例化的对象
     :param closable: boole
     :param width: 图表的宽
     :param height: 图标的高
     :param pos_x: 以屏幕左上角为坐系的x轴
     :param pos_y: 以屏幕左上角为坐系的y轴
     :return:
     """
     panel_id = "CHART_" + str(chart_obj.chart_id)
     title = chart_obj.title
     if panel_id not in self.html_panels:
         # 先创建一个htmlPanel
         url = chart_obj.html_file
         msg = AtomUi.mk_ui_html_panel_show(panel_id, url, title, width,
                                            height, closable, pos_x, pos_y)
         self.html_panels.append(panel_id)
         # 用state显示图表
         self.pub_state(panel_id, "", msg)
         time.sleep(1)
         init_data = chart_obj.to_json()
         msg = AtomUi.mk_ui_chart_init(panel_id, init_data)
         self.chart_panels[chart_obj.chart_id] = chart_obj
         return self.pub_state(WORLD_STATES.CHART_INIT, {
             "panel_id": panel_id,
             "init_data": init_data
         }, msg)
Exemple #2
0
 def cr_ui_chart_panel_update(self, chart_id):
     """
     更新图表
     :param chart_id: 展示图表的名字
     :return:
     """
     panel_id = "CHART_" + str(chart_id)
     if chart_id in self.chart_panels:
         data = self.chart_panels[chart_id].to_json()
         msg = AtomUi.mk_ui_chart_init(panel_id, data)
         return self.pub_message(msg)