国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Python如何利用matplotlib畫出漂亮的分析圖表呢?下面給大家解答

89542767 / 728人閱讀

  小編寫這篇文章的一個(gè)主要目的,主要是給大家講解Python事宜,主要是利用Python中的matplotlib去做數(shù)據(jù)分析表,當(dāng)我們把數(shù)據(jù)分析表做出來(lái)之后,怎么才能做的夠漂亮一些呢?下面就給大家詳細(xì)解答下。


  前言


  作為一名優(yōu)秀的分析師,還是得學(xué)會(huì)一些讓圖表漂亮的技巧,這樣子拿出去才更加有面子哈哈。好了,今天的錦囊就是介紹一下各種常見(jiàn)的圖表,可以怎么來(lái)畫吧。


  數(shù)據(jù)集引入


  首先引入數(shù)據(jù)集,我們還用一樣的數(shù)據(jù)集吧,分別是Salary_Ranges_by_Job_Classification以及GlobalLandTemperaturesByCity。(具體數(shù)據(jù)集可以后臺(tái)回復(fù)plot獲取)


  #導(dǎo)入一些常用包
  import pandas as pd
  import numpy as np
  import seaborn as sns
  %matplotlib inline
  import matplotlib.pyplot as plt
  import matplotlib as mpl
  plt.style.use('fivethirtyeight')
  #解決中文顯示問(wèn)題,Mac
  from matplotlib.font_manager import FontProperties
  #查看本機(jī)plt的有效style
  print(plt.style.available)
  #根據(jù)本機(jī)available的style,選擇其中一個(gè),因?yàn)橹爸纆gplot很好看,所以我選擇了它
  mpl.style.use(['ggplot'])
  #['_classic_test','bmh','classic','dark_background','fast','fivethirtyeight','ggplot','grayscale','seaborn-bright','seaborn-colorblind','seaborn-dark-palette','seaborn-dark','seaborn-darkgrid','seaborn-deep','seaborn-muted','seaborn-notebook','seaborn-paper','seaborn-pastel','seaborn-poster','seaborn-talk','seaborn-ticks','seaborn-white','seaborn-whitegrid','seaborn','Solarize_Light2']
  #數(shù)據(jù)集導(dǎo)入
  #引入第1個(gè)數(shù)據(jù)集Salary_Ranges_by_Job_Classification
  salary_ranges=pd.read_csv('./data/Salary_Ranges_by_Job_Classification.csv')
  #引入第2個(gè)數(shù)據(jù)集GlobalLandTemperaturesByCity
  climate=pd.read_csv('./data/GlobalLandTemperaturesByCity.csv')
  #移除缺失值
  climate.dropna(axis=0,inplace=True)
  #只看中國(guó)
  #日期轉(zhuǎn)換,將dt轉(zhuǎn)換為日期,取年份,注意map的用法
  climate['dt']=pd.to_datetime(climate['dt'])
  climate['year']=climate['dt'].map(lambda value:value.year)
  climate_sub_china=climate.loc[climate['Country']=='China']
  climate_sub_china['Century']=climate_sub_china['year'].map(lambda x:int(x/100+1))
  climate.head()

  

01.png



      折線圖

02.png

  折線圖是比較簡(jiǎn)單的圖表了,也沒(méi)有什么好優(yōu)化的,顏色看起來(lái)順眼就好了。下面是從網(wǎng)上找到了顏色表,可以從中挑選~


  #選擇上海部分天氣數(shù)據(jù)


 df1=climate.loc[(climate['Country']=='China')&(climate['City']=='Shanghai')&(climate['dt']>='2010-01-01')]
  .loc[:,['dt','AverageTemperature']]
  .set_index('dt')
  df1.head()

03.png

  #折線圖
  df1.plot(colors=['lime'])
  plt.title('AverageTemperature Of ShangHai')
  plt.ylabel('Number of immigrants')
  plt.xlabel('Years')
  plt.show()

04.png

  上面這是單條折線圖,多條折線圖也是可以畫的,只需要多增加幾列。


  #多條折線圖
  df1=climate.loc[(climate['Country']=='China')&(climate['City']=='Shanghai')&(climate['dt']>='2010-01-01')]
  .loc[:,['dt','AverageTemperature']]
  .rename(columns={'AverageTemperature':'SH'})
  df2=climate.loc[(climate['Country']=='China')&(climate['City']=='Tianjin')&(climate['dt']>='2010-01-01')]
  .loc[:,['dt','AverageTemperature']]
  .rename(columns={'AverageTemperature':'TJ'})
  df3=climate.loc[(climate['Country']=='China')&(climate['City']=='Shenyang')&(climate['dt']>='2010-01-01')]
  .loc[:,['dt','AverageTemperature']]
  .rename(columns={'AverageTemperature':'SY'})
  #合并
  df123=df1.merge(df2,how='inner',on=['dt'])
  .merge(df3,how='inner',on=['dt'])
  .set_index(['dt'])
  df123.head()

  #多條折線圖

05.png

  df123.plot()
  plt.title('AverageTemperature Of 3 City')
  plt.ylabel('Number of immigrants')
  plt.xlabel('Years')
  plt.show()

06.png

  餅圖


  接下來(lái)是畫餅圖,我們可以優(yōu)化的點(diǎn)多了一些,比如說(shuō)從餅塊的分離程度,我們先畫一個(gè)“低配版”的餅圖。

  df1=salary_ranges.groupby('SetID',axis=0).sum()

07.png

  #“低配版”餅圖
  df1['Step'].plot(kind='pie',figsize=(7,7),
  autopct='%1.1f%%',
  shadow=True)
  plt.axis('equal')
  plt.show()

08.png

  #“高配版”餅圖
  colors=['lightgreen','lightblue']#控制餅圖顏色['lightgreen','lightblue','pink','purple','grey','gold']
  explode=[0,0.2]#控制餅圖分離狀態(tài),越大越分離
  df1['Step'].plot(kind='pie',figsize=(7,7),
  autopct='%1.1f%%',startangle=90,
  shadow=True,labels=None,pctdistance=1.12,colors=colors,explode=explode)
  plt.axis('equal')
  plt.legend(labels=df1.index,loc='upper right',fontsize=14)
  plt.show()

09.png

  散點(diǎn)圖


  散點(diǎn)圖可以優(yōu)化的地方比較少了,ggplot2的配色都蠻好看的,正所謂style選的好,省很多功夫!


  #選擇上海部分天氣數(shù)據(jù)
  df1=climate.loc[(climate['Country']=='China')&(climate['City']=='Shanghai')&(climate['dt']>='2010-01-01')]
  .loc[:,['dt','AverageTemperature']]
  .rename(columns={'AverageTemperature':'SH'})
  df2=climate.loc[(climate['Country']=='China')&(climate['City']=='Shenyang')&(climate['dt']>='2010-01-01')]
  .loc[:,['dt','AverageTemperature']]
  .rename(columns={'AverageTemperature':'SY'})
  #合并
  df12=df1.merge(df2,how='inner',on=['dt'])
  df12.head()

  

10.png

      #散點(diǎn)圖
  df12.plot(kind='scatter',x='SH',y='SY',figsize=(10,6),color='darkred')
  plt.title('Average Temperature Between ShangHai-ShenYang')
  plt.xlabel('ShangHai')
  plt.ylabel('ShenYang')
  plt.show()

11.png

  面積圖


  #多條折線圖
  df1=climate.loc[(climate['Country']=='China')&(climate['City']=='Shanghai')&(climate['dt']>='2010-01-01')]
  .loc[:,['dt','AverageTemperature']]
  .rename(columns={'AverageTemperature':'SH'})
  df2=climate.loc[(climate['Country']=='China')&(climate['City']=='Tianjin')&(climate['dt']>='2010-01-01')]
  .loc[:,['dt','AverageTemperature']]
  .rename(columns={'AverageTemperature':'TJ'})
  df3=climate.loc[(climate['Country']=='China')&(climate['City']=='Shenyang')&(climate['dt']>='2010-01-01')]
  .loc[:,['dt','AverageTemperature']]
  .rename(columns={'AverageTemperature':'SY'})

 

12.png

   #合并
  df123=df1.merge(df2,how='inner',on=['dt'])
  .merge(df3,how='inner',on=['dt'])
  .set_index(['dt'])
  df123.head()
  colors=['red','pink','blue']#控制餅圖顏色['lightgreen','lightblue','pink','purple','grey','gold']
  df123.plot(kind='area',stacked=False,
  figsize=(20,10),colors=colors)
  plt.title('AverageTemperature Of 3 City')
  plt.ylabel('AverageTemperature')
  plt.xlabel('Years')
  plt.show()

13.png

  直方圖


  #選擇上海部分天氣數(shù)據(jù)
  df=climate.loc[(climate['Country']=='China')&(climate['City']=='Shanghai')&(climate['dt']>='2010-01-01')]
  .loc[:,['dt','AverageTemperature']]
  .set_index('dt')
  df.head()

14.png

  #最簡(jiǎn)單的直方圖
  df['AverageTemperature'].plot(kind='hist',figsize=(8,5),colors=['grey'])
  plt.title('ShangHai AverageTemperature Of 2010-2013')#add a title to the histogram
  plt.ylabel('Number of month')#add y-label
  plt.xlabel('AverageTemperature')#add x-label
  plt.show()

15.png

  條形圖


  #選擇上海部分天氣數(shù)據(jù)
  df=climate.loc[(climate['Country']=='China')&(climate['City']=='Shanghai')&(climate['dt']>='2010-01-01')]
  .loc[:,['dt','AverageTemperature']]
  .set_index('dt')
  df.head()
  
  df.plot(kind='bar',figsize=(10,6))
  plt.xlabel('Month')
  plt.ylabel('AverageTemperature')
  plt.title('AverageTemperature of shanghai')
  plt.show()
  df.plot(kind='barh',figsize=(12,16),color='steelblue')
  plt.xlabel('AverageTemperature')
  plt.ylabel('Month')
  plt.title('AverageTemperature of shanghai')
  plt.show()

16.png

  綜上所述,這篇文章就給大家介紹完畢,希望可以給大家?guī)?lái)幫助。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/128354.html

相關(guān)文章

  • Python如何利用pandas讀取csv數(shù)據(jù)并繪圖

      小編寫這篇文章的一個(gè)主要目的,主要是給大家去做一個(gè)解答,解答的內(nèi)容主要是Python相關(guān)知識(shí),比如說(shuō),會(huì)給大家講解怎么樣去利用Python pandas去做一個(gè)讀取,讀取的是csv數(shù)據(jù),然后將這些數(shù)據(jù)去做一個(gè)繪圖處理,具體內(nèi)容下面給大家詳細(xì)解答。  如何利用pandas讀取csv數(shù)據(jù)并繪圖  導(dǎo)包,常用的numpy和pandas,繪圖模塊matplotlib,  importmatplotli...

    89542767 評(píng)論0 收藏0
  • PyCharm調(diào)用matplotlib繪圖時(shí)圖像彈出問(wèn)題詳解

      小編寫這篇文章的主要目的,主要是來(lái)給大家解答關(guān)于Python Pycharm的一些相關(guān)問(wèn)題,包括涉及到如何調(diào)用其maplotlib的相關(guān)繪圖問(wèn)題,另外還涉及到圖像彈出問(wèn)題等的一些相關(guān)介紹。那么,具體問(wèn)題怎么解答呢?下面就給大家詳細(xì)解答下。  問(wèn)題描述  在PyCharm中調(diào)用matplotlib繪制圖像時(shí),默認(rèn)圖像會(huì)在控制臺(tái)輸出(如圖),當(dāng)繪制圖像較多時(shí),控制臺(tái)輸出方式很不直觀。  問(wèn)題解決 ...

    89542767 評(píng)論0 收藏0
  • 【正經(jīng)AI on Python入門系列】1.2 斗圖工具優(yōu)化——文本寬度自適應(yīng)(來(lái)做點(diǎn)小數(shù)據(jù)分析

    摘要:在上一篇文章圖工具的優(yōu)化實(shí)現(xiàn)文本居中中,我們已經(jīng)實(shí)現(xiàn)了對(duì)插入字體的左中右對(duì)齊顯示,那因?yàn)樯掀谖恼禄爝M(jìn)去了不少語(yǔ)法講解,所以后面的內(nèi)容就順延到這啦,哈哈哈。 showImg(https://segmentfault.com/img/bVbeIu4?w=250&h=250); 在上一篇文章【圖工具的優(yōu)化——實(shí)現(xiàn)文本居中】中,我們已經(jīng)實(shí)現(xiàn)了對(duì)插入字體的左中右對(duì)齊顯示,那因?yàn)樯掀谖恼禄爝M(jìn)去了不...

    fireflow 評(píng)論0 收藏0
  • Python如何使用Matplotlib庫(kù)繪制圖形

      Python Matplotlib作為一種可視化的工具,可以利用其可視化的應(yīng)用,去做到繪制圖形,比如可以利用其Matplotlib去進(jìn)行繪制圖形,具體的操作方法要做到什么樣呢?下面就給大家詳細(xì)解答下。  前言  Matplotlib可能是Python 2D-繪圖領(lǐng)域使用最廣泛的套件。它能讓使用者很輕松地將數(shù)據(jù)圖形化,并且提供多樣化的輸出格式。這里將會(huì)探索使用matplotlib庫(kù)實(shí)現(xiàn)簡(jiǎn)單的圖形...

    89542767 評(píng)論0 收藏0
  • Python工具分析風(fēng)險(xiǎn)數(shù)據(jù)

    摘要:小安分析的數(shù)據(jù)主要是用戶使用代理訪問(wèn)日志記錄信息,要分析的原始數(shù)據(jù)以的形式存儲(chǔ)。下面小安帶小伙伴們一起來(lái)管窺管窺這些數(shù)據(jù)。在此小安一定一定要告訴你,小安每次做數(shù)據(jù)分析時(shí)必定使用的方法方法。 隨著網(wǎng)絡(luò)安全信息數(shù)據(jù)大規(guī)模的增長(zhǎng),應(yīng)用數(shù)據(jù)分析技術(shù)進(jìn)行網(wǎng)絡(luò)安全分析成為業(yè)界研究熱點(diǎn),小安在這次小講堂中帶大家用Python工具對(duì)風(fēng)險(xiǎn)數(shù)據(jù)作簡(jiǎn)單分析,主要是分析蜜罐日志數(shù)據(jù),來(lái)看看一般大家都使用代理i...

    Berwin 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<