日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Python數(shù)據(jù)可視化,seaborn如何做出非常規(guī)圖表

前言

創(chuàng)新互聯(lián)建站是一家專注于成都網(wǎng)站設計、成都網(wǎng)站建設與策劃設計,平川網(wǎng)站建設哪家好?創(chuàng)新互聯(lián)建站做網(wǎng)站,專注于網(wǎng)站建設十載,網(wǎng)設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:平川等地區(qū)。平川做網(wǎng)站價格咨詢:18980820575

上一節(jié)(Python可視化,matplotlib最佳入門練習 )我們只是單純使用 matplotlib 制作出以下圖表:

  • 每年小麥產(chǎn)量柱狀圖
  • 使用不同顏色標記最小與最大值的柱子

但是,如果只是制作標準的圖表,我們有許多其他的選擇。最常見的就是使用 seaborn ,他是基于 matplotlib 的包裝。

這一節(jié)我們就來看看,如何使用 seaborn 生成標準圖表,然后結合 matplotlib 做出定制效果。

特別是多系列的情況下,會有一些技巧。

本文目標圖表是這樣:

2個系列。每個系列找出最小最大的柱子,標記成不同的顏色

本文所需要的庫如下:

數(shù)據(jù)是這樣子:

上一節(jié)做的事情如下:

  • 設置 x 軸標簽的旋轉角度
  • 設置某個指定柱狀圖的柱子顏色

簡單把這些事情包裝成函數(shù):

使用 seaborn 的代碼,實際與上一節(jié)直接使用 matplotlib 差不多:

看起來 seaborn 沒有特別的地方!

這是因為我們只有一個系列(上圖只涉及2個維度:wheat 與 year)

多系列

稍微修改一下數(shù)據(jù),

  • 行3、4、5:復制一份數(shù)據(jù),小麥產(chǎn)量隨機生成
  • 行7、8:新增一個列"type",把數(shù)據(jù)劃分成2類:"原始" 、"修改"
  • 行10:合并成一份數(shù)據(jù)
  • 行12:避免數(shù)據(jù)太多,圖表不利于閱讀,我只保留1750年以后的數(shù)據(jù)

現(xiàn)在數(shù)據(jù)成這樣:

每個年份都有2行記錄,字段"type"可以區(qū)分他們

使用 seaborn 可以非常方便映射多個維度的數(shù)據(jù):

行1:hue 是類別映射,通常如果有一個列數(shù)據(jù)是文本,就可以映射上去。這里把數(shù)據(jù)中的"type"字段映射

圖表成這樣子:

顯然沒有標記出最大值的柱子

同時也提示執(zhí)行有錯誤

如果我們查看圖表的容器就能看出關鍵:

原來,seaborn 柱子分成2組。這是非常合理的

但數(shù)據(jù)范圍索引,卻是在整個數(shù)據(jù)共27行中查找

顯然,我們需要是2組的范圍索引:

語義非常清晰直白

但是,怎么準確從圖表容器中找到需要的 BarContainer:

行7與行12:里面的 0 和 1 都是猜測的

原來,seaborn 在生成這些容器時,給容器的 label 屬性寫入了對應的數(shù)據(jù)值(就是我們數(shù)據(jù)的"type"字段):

注意,你不能使用 key 索引方式獲取,比如寫: axcontainers['修改'] ,這會報錯

萬事俱備,定義如下函數(shù):

現(xiàn)在調(diào)用變得非常簡單:

圖表成這樣子:

接下來我會繼續(xù)編寫更多非常規(guī)要求的圖表,敬請關注!


新聞標題:Python數(shù)據(jù)可視化,seaborn如何做出非常規(guī)圖表
文章位置:http://www.5511xx.com/article/coosijg.html