日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

向seaborn传递matplotlib绘图参数,精细地控制seaborn输出图形

發布時間:2023/12/19 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 向seaborn传递matplotlib绘图参数,精细地控制seaborn输出图形 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. matplotlib與seaborn的關系

matplotlib繪圖參數非常多,可以通過參數精細的控制圖形輸出,這是它的優點。但同時也很復雜,繪一個圖常常需要很多行代碼,需要使用者熟悉眾多圖形控制參數,不容易上手,這是它的缺點。seaborn是基于matplotlib的數據可視化軟件包,本身并不畫圖,而是調用matplotlib進行繪圖,在做探索式數據分析時,特別是對于dataframe數據結構,seaborn比matplotlib高效得多,簡單的圖只要1-2行代碼就可以完成。為了簡單易用,將很多matplotlib的用于圖形精細控制、跟數據分析關系不大的參數(如線寬、數據點大小,透明度等),放到一個參數集合中提供調用,因此如果在使用seaborn進行數據分析時,如果需要對圖形對進行一些小對修改,往往需要向seaborn傳遞matplotlib參數。

2. 向seanborn畫圖函數傳遞matplotlib繪圖參數

以seanborn 的lmplot為例,說明如何向seanborn畫圖函數傳遞matplotlib參數。

seaborn.lmplot(x,?y,?data,?hue=None,?col=None,?row=None,?...?scatter_kws=None,?line_kws=None,?size=None)

其中scatter_kws=None,?line_kws=None是可以用字典等格式作向seaborn傳遞matplotlib參數。

sns.set(style="darkgrid") grid = sns.lmplot(x='YEARS_EXPERIENCE', y='BASE_SALARY', hue='GENDER', data=employee)

圖形輸出如下:

數據點太多來,重合比較厲害,想把數據點等大小調小一點,但 sns.lmplot并沒有控制數據點大小但參數,需要調用matplotlib.pyplot.scatter的參數。

matplotlib.pyplot.scatter的參數如下:

matplotlib.pyplot.scatter(x,?y,?s=None,?c=None,?marker=None,?cmap=None,?norm=None,?vmin=None,?vmax=None,?alpha=None,?linewidths=None,?verts=None,?edgecolors=None,?*,?plotnonfinite=False,?data=None,?**kwargs)

其中,參數s控制數據點的大小,我們可以在seaborn中通過scatter_kws={'s':10}可以將matplotlib參數s=10傳遞給seaborn。

sns.set(style="darkgrid") grid = sns.lmplot(x='YEARS_EXPERIENCE', y='BASE_SALARY', hue='GENDER', scatter_kws={'s':10}, data=employee)

圖形輸出如下:

?

總結

以上是生活随笔為你收集整理的向seaborn传递matplotlib绘图参数,精细地控制seaborn输出图形的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。