cao死我好湿好紧好爽动态视屏|精选久久久久久久久久|中文无码精品一区二区三区四季|AAA国语精品刺激对白视频|

當(dāng)前位置:首頁 > 網(wǎng)站建設(shè) > 正文內(nèi)容

畫圖生成html(畫圖生成程序)

網(wǎng)站建設(shè)6個月前 (07-01)375

作者:俊欣

來源:關(guān)于數(shù)據(jù)分析與可視化

前兩篇Pyecharts的文章來幫我們簡單的梳理了一下可以用Pyecharts來繪制哪些圖表之后,本篇文章我們用pyecharts里面的一些組件,將繪制的圖表都組合起來

首先Grid組件

首先介紹Pyecharts模塊當(dāng)中的Grid組件,使用Grid組件可以很好地將多張圖無論是上下組合還是左右組合,都能夠很好地拼接起來,我們先來看第一個例子

bar = (

Bar()

.add_xaxis(Faker.choose())

.add_yaxis("商家1", Faker.values())

.add_yaxis("商家2", Faker.values())

.set_global_opts(title_opts=opts.TitleOpts(title="直方圖"))

line = (

Line()

.add_xaxis(Faker.choose())

.add_yaxis("商家1", Faker.values())

.add_yaxis("商家2", Faker.values())

.set_global_opts(

展開全文

title_opts=opts.TitleOpts(title="折線圖", pos_top="48%"),

legend_opts=opts.LegendOpts(pos_top="48%"),

grid = (

Grid()

.add(bar, grid_opts=opts.GridOpts(pos_bottom="60%"))

.add(line, grid_opts=opts.GridOpts(pos_top="50%"))

.render("水平組合圖_test.html")

我們可以看到兩張圖表被以上下組合的方式拼接起來,當(dāng)然除了上下的拼接以外,我們還可以左右來拼接,代碼如下

bar = (

Bar()

.add_xaxis(Faker.choose())

.add_yaxis("商家1", Faker.values())

.add_yaxis("商家2", Faker.values())

.set_global_opts(title_opts=opts.TitleOpts(title="直方圖"),legend_opts=opts.LegendOpts(pos_left="20%"),)

line = (

Line()

.add_xaxis(Faker.choose())

.add_yaxis("商家1", Faker.values())

.add_yaxis("商家2", Faker.values())

.set_global_opts(

title_opts=opts.TitleOpts(title="折線圖", pos_right="5%"),

legend_opts=opts.LegendOpts(pos_right="20%"),

grid = (

Grid()

.add(bar, grid_opts=opts.GridOpts(pos_left="60%"))

.add(line, grid_opts=opts.GridOpts(pos_right="50%"))

.render("垂直組合圖_test.html")

可以看到我們無論是想上下拼接還是左右拼接,都可以通過調(diào)整參數(shù)“pos_left”、“pos_right”、“pos_top”以及“pos_bottom”這幾個參數(shù)來實現(xiàn),我們再來看一下下面這個例子,我們也可以將地圖和直方圖兩者拼接起來

bar = (

Bar()

.add_xaxis(Faker.choose())

.add_yaxis("商家1", Faker.values())

.add_yaxis("商家2", Faker.values())

.set_global_opts(legend_opts=opts.LegendOpts(pos_left="20%"))

map = (

Map()

.add("商家1", [list(z) for z in zip(Faker.provinces, Faker.values())], "china")

.set_global_opts(title_opts=opts.TitleOpts(title="地圖-基本示例"))

grid = (

Grid()

.add(bar, grid_opts=opts.GridOpts(pos_top="50%", pos_right="75%"))

.add(map, grid_opts=opts.GridOpts(pos_left="60%"))

.render("地圖+直方圖.html")

再談Overlap組件

英文單詞“overlap”的意思是重疊,那么放在這里,也就指的是可以將多張圖合并成一張,那么該怎么結(jié)合才好呢?我們來看一下下面這個例子,我們將直方圖和折線圖通過overlap組件組合到一起

v1 = Faker.values()

v2 = Faker.values()

畫圖生成html(畫圖生成程序)

v3 = Faker.values()

bar = (

Bar()

.add_xaxis(Faker.provinces)

.add_yaxis("商家A", v1)

.add_yaxis("商家B", v2)

.extend_axis(

yaxis=opts.AxisOpts(

axislabel_opts=opts.LabelOpts(formatter="{value} 個"), interval=20

.set_series_opts(label_opts=opts.LabelOpts(is_show=False))

.set_global_opts(

title_opts=opts.TitleOpts(title="Overlap-bar+line"),

yaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(formatter="{value} 個")),

line = Line().add_xaxis(Faker.provinces).add_yaxis("商家C", v3, yaxis_index=1)

bar.overlap(line)

bar.render("直方圖+折線圖Overlap.html")

除此之外,我們也可以將散點圖和折線圖合并在一張圖上面,在代碼上就只要將直方圖的代碼替換成散點圖的就行,這邊也就具體不做演示

Grid組件 + Overlap組件相結(jié)合

我們也可以將上面提高的兩個組件結(jié)合起來使用,以此來繪制多條Y軸的直方圖圖表,代碼如下

Bar()

.add_xaxis(x_data)

.add_yaxis(

"A",

[具體相關(guān)的數(shù)據(jù)],

yaxis_index=0,

color="#d14a61",

.add_yaxis(

"B",

[具體相關(guān)的數(shù)據(jù)],

yaxis_index=1,

color="#5793f3",

.直方圖的全局配置代碼....

line = (

Line()

.add_xaxis(x_data)

.add_yaxis(

"C",

[具體相關(guān)的數(shù)據(jù)],

yaxis_index=2,

color="#675bba",

label_opts=opts.LabelOpts(is_show=False),

bar.overlap(line)

grid = Grid()

grid.add(bar, opts.GridOpts(pos_left="5%", pos_right="20%"), is_control_axis_index=True)

grid.render("test.html")

分頁組件Tab

我們在用Pyecharts繪制了多張圖表之后,可以直接Tab組件將多張圖表連起來,一頁放一張圖表,具體看下面的例子和代碼,

def bar_datazoom_slider() - Bar:

c = (

Bar()

.add_xaxis(Faker.days_attrs)

.add_yaxis("商家A", Faker.days_values)

.set_global_opts(

title_opts=opts.TitleOpts(title="Bar-DataZoom(slider-水平)"),

datazoom_opts=[opts.DataZoomOpts()],

return c

def line_markpoint() - Line:

c = (

Line()

.add_xaxis(Faker.choose())

.add_yaxis(

"商家A",

Faker.values(),

markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="min")]),

.set_global_opts(title_opts=opts.TitleOpts(title="折線圖"))

return c

def pie_rosetype() - Pie:

v = Faker.choose()

c = (

Pie()

.add(

"",

[list(z) for z in zip(v, Faker.values())],

radius=["30%", "75%"],

center=["25%", "50%"],

rosetype="radius",

label_opts=opts.LabelOpts(is_show=False),

.set_global_opts(title_opts=opts.TitleOpts(title="餅圖-玫瑰圖示例"))

return c

tab = Tab()

tab.add(bar_datazoom_slider(), "直方圖")

tab.add(line_markpoint(), "折線圖")

tab.add(pie_rosetype(), "餅圖")

tab.render("tab_base.html")

分別將所繪制的三張圖表放置在三個頁面當(dāng)中,通過pyecharts庫當(dāng)中的tab串聯(lián)起來

最后是Page組件

和上面Tab組件不一樣的是,Tab組件是一頁放一張圖表,有幾張圖表就分成幾頁,而Page組件則是將繪制完成的多張圖表統(tǒng)統(tǒng)放在一張頁面里面,代碼的改動上面也十分的簡單,只要將上面代碼的Tab部分改成Page()即可,如下

def bar_datazoom_slider() - Bar:

c = (

Bar()

.add_xaxis(Faker.days_attrs)

.add_yaxis("商家A", Faker.days_values)

.set_global_opts(

title_opts=opts.TitleOpts(title="Bar-DataZoom(slider-水平)"),

datazoom_opts=[opts.DataZoomOpts()],

return c

def line_markpoint() - Line:

c = (

Line()

.add_xaxis(Faker.choose())

.add_yaxis(

"商家A",

Faker.values(),

markpoint_opts=opts.MarkPointOpts(data=[opts.MarkPointItem(type_="min")]),

.set_global_opts(title_opts=opts.TitleOpts(title="折線圖"))

return c

def pie_rosetype() - Pie:

v = Faker.choose()

c = (

Pie()

.add(

"",

[list(z) for z in zip(v, Faker.values())],

radius=["30%", "75%"],

center=["25%", "50%"],

rosetype="radius",

label_opts=opts.LabelOpts(is_show=False),

.set_global_opts(title_opts=opts.TitleOpts(title="餅圖-玫瑰圖示例"))

return c

page = Page(layout=Page.SimplePageLayout)

page.add(

bar_datazoom_slider(),

line_markpoint(),

pie_rosetype(),

page.render("page_simple_layout.html")

上圖所示的圖表在頁面當(dāng)中是不能被挪動的,在Page()組件當(dāng)中我們還能夠使得圖表按照我們所想的那樣隨意的挪動

## 上面的代碼都一樣,

page = Page(layout=Page.DraggablePageLayout)

page.add(

bar_datazoom_slider(),

line_markpoint(),

pie_rosetype(),

page.render("page_draggable_layout.html")

寫在最后

本篇文章所用到的繪制的圖表都比較的簡單,為了可以讓讀者更加容易輕松的上手來實踐,本質(zhì)上就是通過上面提到的幾大組件將繪制好的圖表給串聯(lián)起來。

掃描二維碼推送至手機訪問。

版權(quán)聲明:本文由飛速云SEO網(wǎng)絡(luò)優(yōu)化推廣發(fā)布,如需轉(zhuǎn)載請注明出處。

本文鏈接:http://m.smallwaterjetsystem.com/post/117690.html

標(biāo)簽: 畫圖生成html

“畫圖生成html(畫圖生成程序)” 的相關(guān)文章

外貿(mào)網(wǎng)站seo教程(seo外貿(mào)網(wǎng)站優(yōu)化)

外貿(mào)網(wǎng)站seo教程(seo外貿(mào)網(wǎng)站優(yōu)化)

今天給各位分享外貿(mào)網(wǎng)站seo教程的知識,其中也會對seo外貿(mào)網(wǎng)站優(yōu)化進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、外貿(mào)SEO網(wǎng)站該怎么優(yōu)化 2、外貿(mào)網(wǎng)站如何做seo 3、外貿(mào)網(wǎng)站的SEO優(yōu)化該怎么做 4、如何做外貿(mào)網(wǎng)站的SEO優(yōu)化 外貿(mào)SEO...

蘭州網(wǎng)站建設(shè)的簡單介紹

蘭州網(wǎng)站建設(shè)的簡單介紹

本篇文章給大家談?wù)勌m州網(wǎng)站建設(shè),以及對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、想在蘭州做網(wǎng)站建設(shè)找哪家公司呢? 2、蘭州怎么樣做好網(wǎng)站建設(shè)嗎? 3、蘭州網(wǎng)站建設(shè)怎么提高實用性? 4、蘭州網(wǎng)站建設(shè)公司怎么樣?。?5、蘭州最最專業(yè)做網(wǎng)站哪家公司? 6...

設(shè)計概念論述怎么寫(設(shè)計概念論述怎么寫的)

設(shè)計概念論述怎么寫(設(shè)計概念論述怎么寫的)

本篇文章給大家談?wù)勗O(shè)計概念論述怎么寫,以及設(shè)計概念論述怎么寫的對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、設(shè)計理念怎么寫 2、建筑設(shè)計概念怎么寫? 3、作品設(shè)計理念怎么寫? 4、設(shè)計的概念是什么 5、設(shè)計理念怎么寫? 6、設(shè)計的基本概念? 設(shè)計理...

犀牛玉雕圖片大全(雕刻犀牛圖片)

犀牛玉雕圖片大全(雕刻犀牛圖片)

今天給各位分享犀牛玉雕圖片大全的知識,其中也會對雕刻犀牛圖片進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、12屬相金包玉真品圖片大全,十二生肖玉石擺件圖片這是真是真的古董媽 2、犀牛和牛的區(qū)別在哪里,,,急!?。。?! 3、慈禧生前最愛的玉雕是它?原...

英語寫推薦信模板萬能句子(英語寫推薦信模板萬能句子怎么寫)

英語寫推薦信模板萬能句子(英語寫推薦信模板萬能句子怎么寫)

本篇文章給大家談?wù)動⒄Z寫推薦信模板萬能句子,以及英語寫推薦信模板萬能句子怎么寫對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、英語建議信萬能句子開頭結(jié)尾 2、英語寫信模板萬能句子 3、關(guān)于英文推薦信范文3篇 4、英語介紹信萬能模板 5、高中英文推薦信范文...

考研英語小作文模板怎么總結(jié)(考研英語小作文模板信文都)

考研英語小作文模板怎么總結(jié)(考研英語小作文模板信文都)

本篇文章給大家談?wù)効佳杏⒄Z小作文模板怎么總結(jié),以及考研英語小作文模板信文都對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、考研英語小作文模板有哪些? 2、2017考研英語2小作文怎么寫 3、考研英語小作文格式官方 考研英語小作文模板有哪些? 《考研資料考研英語2...