Ejemplo n.º 1
0
def drawFunnel(title, data, savepath='.\\results'):
    if not os.path.exists(savepath):
        os.mkdir(savepath)

    funnel = Funnel()

    items = sorted(data.items(), key=lambda x: x[1], reverse=True)
    funnel.add(title,items,label_opts=opts.LabelOpts(is_show=True))\
    .set_global_opts(title_opts=opts.TitleOpts(title=title),legend_opts=opts.LegendOpts(pos_left="right",orient="vertical"))\
    .render(os.path.join(savepath, '%s.html' % title))
Ejemplo n.º 2
0
def show_areas():
    select_all()
    funnel = Funnel(
        init_opts=opts.InitOpts(page_title='豆瓣电影-上映地区分布', height='650px'))
    funnel.add("豆瓣电影TOP250-上映地区分布", [list(z) for z in zip(area, num)])
    funnel.set_global_opts(title_opts=opts.TitleOpts(title="豆瓣电影-上映地区分布",
                                                     pos_left='center'),
                           legend_opts=opts.LegendOpts(is_show=False))
    funnel.set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))
    # 生成HTML
    html = "pages/iframes/areas.html"
    funnel.render("./templates/" + html)
    return html
Ejemplo n.º 3
0
 def getFunnel(self, sheet: xlrd.sheet) -> Funnel:
     x_data = sheet.col_values(0)
     y_data = sheet.col_values(1)
     data = [(x_data[i], y_data[i]) for i in range(len(x_data))]
     f = Funnel()
     f.add(
         series_name=sheet.name,
         data_pair=data,
         gap=2,
         #tooltip_opts=opts.TooltipOpts(trigger="item", formatter="{a} <br/>{b} : {c}%",textstyle_opts=opts.TextStyleOpts(color="#fff")),#图例颜色和显示格式
         label_opts=opts.LabelOpts(is_show=True, position="inside"),
         itemstyle_opts=opts.ItemStyleOpts(border_color="#fff",
                                           border_width=1),
     )
     f.set_global_opts(
         title_opts=opts.TitleOpts(title=sheet.name,
                                   title_textstyle_opts=opts.TextStyleOpts(
                                       color="#fff")))
     return f
Ejemplo n.º 4
0
 def funnel(self, title=None, attr=None, value=None, two_title=None):
     """
     漏斗图
     :param title: 数据可视化的标题(字符串)
     :param attr: 名称列表[列表]
     :param value: 名称列表对应数据
     :param two_title: 二级小标题(鼠标悬浮显示小标题)
     :return:漏斗图
     """
     attr2 = attr
     value = value
     funnel = Funnel(title)
     funnel.add(two_title,
                attr2,
                value,
                is_label_show=True,
                label_pos='inside',
                label_text_color='#fff')
     self.page.add(funnel)
     self.page.render()
def funnelChart(df):
    all_columns = df.columns
    columns_to_plot = st.selectbox("Select 1 column",all_columns,key='aa' )
    columns_to_plot1 = st.selectbox("Select 2 column",[col for col in df.columns if col not in [columns_to_plot]], key='bb' )
        # columns_to_plot2 = st.selectbox("Select 1 column",all_columns, key='c' )
        # columns_to_plot3 = st.selectbox("Select 1 column",all_columns, key='d' )
        # columns_to_plot4 = st.selectbox("Select 1 column",all_columns, key='e' )
    cje = df[columns_to_plot].tolist()
    other_var1 = df[columns_to_plot1].tolist()
        # other_var2 = df[columns_to_plot2].tolist()
        # other_var3 = df[columns_to_plot3].tolist()
        # other_var4 = df[columns_to_plot4].tolist()
        
        
    funnel = Funnel(init_opts = opts.InitOpts(width='900px', height='1200px'))
    funnel.add('', [list(z) for z in zip(cje, other_var1)],
        label_opts=opts.LabelOpts(position="inside"),)
        
        
       
    return funnel
Ejemplo n.º 6
0
# 多图表page
import pyecharts.options as opts
from pyecharts.charts import Bar

# 多page
from pyecharts.charts import Page,Bar,Funnel 

page=Page() 
bar=Bar("商品销量","各季度的商品销量") 
bar.add("2018Q3",["轴承","弹簧","齿轮","导轨","丝杠"],[25,23,17,14,17]) 
bar.add("2018Q4",["轴承","弹簧","齿轮","导轨","丝杠"],[23,21,19,19,13]) 
page.add_chart(bar,name="bar") 
funnel=Funnel("订单转化效率","今日用户的订单转化效率") 
funnel.add("",["访问","搜索","点击","加购","订单"],[100.00,78.12,35.74,17.17,2.62]) 
page.add_chart(funnel,name="funnel") 
page.render("page.html") 

Ejemplo n.º 7
0
            random.randint(10, 2500)] for d in range((end - begin).days + 1)]
dt_hong = [[str(begin + datetime.timedelta(days=d)),
            random.randint(10, 2500)] for d in range((end - begin).days + 1)]
calendar = Calendar()
calendar.add("小明", dt_ming)
calendar.add("小红", dt_hong, calendar_opts=opts.CalendarOpts(range_=2020))
# 设置热度图颜色区间
calendar.set_global_opts(
    visualmap_opts=opts.VisualMapOpts(min_=10, max_=2500, pos_top="center"))
calendar.render_notebook()

# %% [markdown]
# ### Funnel -- 漏斗图

funnel = Funnel()
funnel.add("", list(zip(*[Faker.choose(), Faker.values()])))
funnel.render_notebook()

# %% [markdown]
# ### Gauge -- 仪表盘图

gauge = Gauge()
gauge.add("", [["OK", 75]])
gauge.render_notebook()

# %% [markdown]
# ### Liquid -- 水球图

# Liquid().add("", [0.6, 0.66]).render_notebook()
liquid_1 = Liquid().add("", [0.6, 0.65], center=["20%", "50%"])
liquid_2 = Liquid().add("", [0.3, 0.4], shape="rect", center=["80%", "50%"])
Ejemplo n.º 8
0
from pyecharts.charts import Funnel
from pyecharts.faker import Faker  #虚构的数据
from pyecharts import options as opts  #配置
from pyecharts.charts import Bar  #导入bar图
from pyecharts.globals import ThemeType
import random

funnel = Funnel()
funnel.add(
    "用户转化率",
    [list(z) for z in zip(Faker.choose(), Faker.values())],
    label_opts=opts.LabelOpts(position="inside"),
)

funnel.set_global_opts(
    title_opts=opts.TitleOpts(title="Bar-基本示例", subtitle="我是副标题"),
    xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=30)),  #旋转角度
)

funnel.render()
Ejemplo n.º 9
0
heatmap = HeatMap()
heatmap.add("热力图直角坐标系",
            x_axis,
            y_axis,
            data,
            is_visualmap=True,
            visual_text_color="#000",
            visual_orient="horizontal")
heatmap.render(r".\my_first_Hotmap.html")
"""漏斗图"""
attr = ["潜在", "接触", "意向", "明确", "投入", "谈判", "成交"]
value = [140, 120, 100, 80, 60, 40, 20]
funnel = Funnel("销售管理分析漏斗图")
funnel.add("商品",
           attr,
           value,
           is_label_show=True,
           label_pos="inside",
           label_text_color="#fff")
funnel.render(r".\my_first_Loudou.html")
"""词云图"""
name = [
    "Sam s  Club", "Macys", "Amy Schumer", "Jurassic World",
    "Charter Communications", "Chick Fil A", "Planet Fitness", "Pitch Perfect",
    "Express", "Home", "Johnny Depp", "Lena Dunham", "Lewis Hamilton", "KXAN",
    "Mary Ellen Mark", "Farrah Abraham", "Rita Ora", "Serena Williams",
    "NCAA baseball tournament", "Point Break"
]
value = [
    10000, 6181, 4386, 4055, 2467, 2244, 1898, 1484, 1112, 965, 847, 582, 555,
    550, 462, 366, 360, 282, 273, 265
]
pie.set_global_opts(title_opts=opts.TitleOpts(title='Pie Sample'))
pie.set_series_opts(label_opts=opts.LabelOpts(formatter='{b}:{c}'))  # 标签显示格式
pie.render(path='pyecharts-pie.html')

# 特效散点图
effect_scatter = EffectScatter()
effect_scatter.add_xaxis(Faker.choose())
effect_scatter.add_yaxis('', Faker.values(), symbol=SymbolType.DIAMOND)
effect_scatter.set_global_opts(title_opts=opts.TitleOpts(
    title='EffectScatter Sample'))
effect_scatter.render(path='pyecharts-effect-scatter.html')

# 漏斗图
funnel = Funnel()
data = [list(z) for z in zip(Faker.choose(), Faker.values())]  # 创建有二个元素列表的列表
funnel.add('用户转化率', data, label_opts=opts.LabelOpts(position='inside'))  # 标签内置
funnel.set_global_opts(title_opts=opts.TitleOpts(title='Funnel Sample'))
funnel.render(path='pyecharts-funnel.html')

# 地理图
geo = Geo()
geo.add_schema(maptype='china')
data = [list(z) for z in zip(Faker.provinces, Faker.values())]
geo.add('geo', data, type_='heatmap')
geo.set_series_opts(label_opts=opts.LabelOpts(is_show=False))
geo.set_global_opts(title_opts=opts.TitleOpts(title='Geo Sample'),
                    visualmap_opts=opts.VisualMapOpts())
geo.render('pyecharts-geo.html')

# 水球图
liquid = Liquid()