基于Python pyecharts實現(xiàn)多種圖例代碼解析
詞云圖
from pyecharts.charts import WordClouddef word1(): words= [ ('Sam S Club', 10000), ('Macys', 6181), ('Amy Schumer', 4386), ('Jurassic World', 4055), ('Charter Communications', 2467), ('Chick Fil A', 2244), ('Planet Fitness', 1868), ('Pitch Perfect', 1484), ('Express', 1112), ('Home', 865), ('Johnny Depp', 847), ('Lena Dunham', 582), ('Lewis Hamilton', 555), ('KXAN', 550), ('Mary Ellen Mark', 462), ('Farrah Abraham', 366), ('Rita Ora', 360), ('Serena Williams', 282), ('NCAA baseball tournament', 273), ('Point Break', 265), ] worldcloud = ( WordCloud() .add('', words, word_size_range=[20, 100]) .set_global_opts(title_opts=opt.TitleOpts(title='WorldCloud-shape-diamond')) ) # worldcloud = ( # WordCloud() # .add('', words, word_size_range=[20, 100], shape=SymbolType.DIAMOND) # .set_global_opts(title_opts=opt.TitleOpts(title='WorldCloud-shape-diamond')) # ) worldcloud.render('wordl.html') os.system('wordl.html')
效果如下:

散點圖
from pyecharts.charts import Scatterimport numpy as npdef sca(): x_data = np.linspace(0, 10, 30) y1_data = np.sin(x_data) y2_data = np.cos(x_data) # 繪制散點圖 # 設(shè)置圖表大小 figsise = opt.InitOpts(width='800px', height='600px') scatter = Scatter(init_opts=figsise) # 添加數(shù)據(jù) scatter.add_xaxis(xaxis_data=x_data) scatter.add_yaxis(series_name='sin(x)散點圖', #名稱 y_axis=y1_data, # 數(shù)據(jù) label_opts=opt.LabelOpts(is_show=False), # 數(shù)據(jù)不顯示 symbol_size=15, # 設(shè)置散點的大小 symbol='triangle' # 設(shè)置散點的形狀 ) scatter.add_yaxis(series_name='cos(x)散點圖', y_axis=y2_data, label_opts=opt.LabelOpts(is_show=False)) scatter.render() os.system('render.html')
效果如下:

餅狀圖
from pyecharts.charts import Piefrom pyecharts import options as optfrom pyecharts.faker import Faker as fadef pie1(): pie = ( Pie() .add('', [list(z) for z in zip(fa.choose(), fa.values())]) .set_global_opts(title_opts=opt.TitleOpts(title='pie-基本示例')) .set_series_opts(label_opts=opt.LabelOpts(formatter=':{c}')) ) pie.render() os.system('render.html')def pie2(): pie = ( Pie() .add('', [list(z) for z in zip(fa.choose(), fa.values())], radius=['40%', '75%']) .set_global_opts(title_opts=opt.TitleOpts(title='pie-示例'), legend_opts=opt.LegendOpts( orient='vertical', pos_top='15%', pos_left='2%' )) .set_series_opts(label_opts=opt.LabelOpts(formatter=':{c}')) ) pie.render() os.system('render.html')def pie3(): pie = ( Pie() .add('', [list(z) for z in zip(fa.choose(), fa.values())], radius=['40%', '75%'], center=['25%', '50%'], rosetype='radius', label_opts=opt.LabelOpts(is_show=False)) .add('', [list(z) for z in zip(fa.choose(), fa.values())], radius=['30%', '75%'], center=['75%', '50%'], rosetype='area') .set_global_opts(title_opts=opt.TitleOpts(title='pie-玫瑰圖示例')) ) pie.render() os.system('render.html')def pie4(): # 多餅圖顯示 pie = ( Pie() .add( '', [list(z) for z in zip(['劇情', '其他'], [25, 75])], center=['20%', '30%'], radius=[40, 60] ) .add( '', [list(z) for z in zip(['奇幻', '其他'], [24, 76])], center=['55%', ’30%’], radius=[40, 60] ) .add( '', [list(z) for z in zip(['愛情', '其他'], [14, 86])], center=['20%', '70%'], radius=[40, 60] ) .add( '', [list(z) for z in zip(['驚駭', '其他'], [1, 89])], center=['55%', '70%'], radius=[40, 60] ) .set_global_opts( title_opts=opt.TitleOpts(title='pie-多餅圖基本示例'), legend_opts=opt.LegendOpts(type_='scroll', pos_top='20%', pos_left='80%', orient='vertical' ) ) .set_series_opts(label_opts=opt.LabelOpts(formatter=':{c}')) ) pie.render() os.system('render.html')
直方圖
from pyecharts.charts import Barfrom pyecharts import options as optfrom pyecharts.globals import ThemeTypefrom pyecharts.faker import Faker as faimport randomdef pye1(): # 生成隨機數(shù)據(jù) attr = fa.days_attrs v1 = [random.randrange(10, 150) for _ in range(31)] v2 = [random.randrange(10, 150) for _ in range(31)] # 初始化一個Bar對象,并設(shè)定一寫初始化設(shè)置 bar = Bar(init_opts=opt.InitOpts(theme=ThemeType.WHITE)) # 添加數(shù)據(jù) bar.add_xaxis(attr) # is_selected: 打開圖表時是否默認(rèn)加載 grap:不同系列的柱間距離,百分比; color:指定柱狀圖Label的顏色 bar.add_yaxis('test1', v1, gap='0', category_gap='20%', color=fa.rand_color()) bar.add_yaxis('test2', v2, is_selected=False, gap='0%', category_gap='20%', color=fa.rand_color()) # 全局配置 # title_opts:圖標(biāo)標(biāo)題相關(guān)設(shè)置 # toolbox_opts: 工具欄相關(guān)設(shè)置 # yaxis_opts/xaxis_opts: 坐標(biāo)軸相關(guān)設(shè)置 # axislabel_opts: 坐標(biāo)軸簽字相關(guān)設(shè)置 # axisline_opts: 坐標(biāo)軸軸線相關(guān)設(shè)置 # datazoom_opts: 坐標(biāo)軸軸線相關(guān)設(shè)置 # markpoint_opts: 標(biāo)記點相關(guān)設(shè)置 # markpoint_opts:label_opts=opts.LabelOpts(is_show=False) 標(biāo)簽值是否疊加 # markline_opts:標(biāo)記線相關(guān)設(shè)置 bar.set_global_opts(title_opts=opt.TitleOpts(title='主標(biāo)題', subtitle='副標(biāo)題'), toolbox_opts=opt.ToolboxOpts(), yaxis_opts=opt.AxisOpts(axislabel_opts=opt.LabelOpts(formatter='{value}/月'), name='這是y軸'), xaxis_opts=opt.AxisOpts( axisline_opts=opt.AxisLineOpts(linestyle_opts=opt.LineStyleOpts(color=’blue’)), name='這是x軸'), datazoom_opts=opt.DataZoomOpts() ) bar.set_series_opts(markpoint_opts=opt.MarkPointOpts(data=[opt.MarkPointItem(type_='max', name='最大值'),opt.MarkPointItem(type_='min', name='最小值'),opt.MarkPointItem(type_='average', name='平均值')]), markline_opts=opt.MarkLineOpts(data=[opt.MarkLineItem(type_='min', name='最小值'), opt.MarkLineItem(type_='max', name='最大值'), opt.MarkLineItem(type_='average', name='平均值')])) # 指定生成html文件路徑 bar.render(’test.html’) os.system('test.html')
效果如下

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. PHP使用Swagger生成好看的API文檔2. 通過實例解析Python文件操作實現(xiàn)步驟3. Python3 json模塊之編碼解碼方法講解4. Python 利用Entrez庫篩選下載PubMed文獻摘要的示例5. ASP.NET MVC使用jQuery ui的progressbar實現(xiàn)進度條6. ASP基礎(chǔ)知識VBScript基本元素講解7. Python 制作查詢商品歷史價格的小工具8. python使用jenkins發(fā)送企業(yè)微信通知的實現(xiàn)9. Python 合并拼接字符串的方法10. Python 如何調(diào)試程序崩潰錯誤

網(wǎng)公網(wǎng)安備