亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

python 繪制斜率圖進行對比分析

瀏覽:81日期:2022-06-24 14:15:09

你好,我是林驥。

斜率圖,可以快速展現兩組數據之間各維度的變化,特別適合用于對比兩個時間點的數據。

比如說,為了對比分析某產品不同功能的用戶滿意度,經過問卷調查和數據統計,得到下面這個調查結果:

python 繪制斜率圖進行對比分析

你不妨自己先思考一下,如何對這組數據進行可視化,才能讓信息傳遞變得更加高效?

下面是我用 matplotlib 制作的圖表:

python 繪制斜率圖進行對比分析

從圖中可以直觀地看出,功能 C 的用戶滿意度明顯下降,我們用比較鮮明的橙色來表示,以便引起觀眾重點關注;功能 D 和功能 E 的用戶滿意度明顯提升,我們用藍色表示,代表數據正在向好的方向發展;功能 A 和功能 B 的用戶滿意度變化不大,我們用淺灰色表示,以便削弱觀眾對這兩個功能的注意力,把更多的精力用于分析用戶滿意度明顯下降的功能點,從而讓圖表起到提升信息傳遞效率的目的。

下面是用 matplotlib 畫圖的詳細步驟。

首先,導入所需的庫,并設置中文字體和定義顏色等。

# 導入所需的庫import numpy as npimport pandas as pdimport matplotlib as mplimport matplotlib.pyplot as pltimport matplotlib.image as image# 正常顯示中文標簽mpl.rcParams[’font.sans-serif’] = [’SimHei’]# 自動適應布局mpl.rcParams.update({’figure.autolayout’: True})# 正常顯示負號mpl.rcParams[’axes.unicode_minus’] = False# 定義顏色,主色:藍色,輔助色:灰色,互補色:橙色c = {’藍色’:’#00589F’, ’深藍色’:’#003867’, ’淺藍色’:’#5D9BCF’, ’灰色’:’#999999’, ’深灰色’:’#666666’, ’淺灰色’:’#CCCCCC’, ’橙色’:’#F68F00’, ’深橙色’:’#A05D00’, ’淺橙色’:’#FBC171’}

其次,從 Excel 文件中讀取隨機模擬的數據,并定義畫圖用的數據。

# 數據源路徑filepath=’./data/問卷調查結果.xlsx’# 讀取 Excel文件df = pd.read_excel(filepath, index_col=’調查年度’)# 定義畫圖用的數據category_names = df.columnslabels = df.indexdata = df.valuesdata_cum = data.cumsum(axis=1)

接下來,開始用「面向對象」的方法進行畫圖。

# 使用「面向對象」的方法畫圖,定義圖片的大小fig, ax=plt.subplots(figsize=(6, 6))# 設置背景顏色fig.set_facecolor(’w’)ax.set_facecolor(’w’)# 設置標題ax.set_title(’n用戶滿意度隨時間的變化n’, fontsize=26, loc=’left’, color=c[’深灰色’])# 定義顏色category_colors = [c[’淺灰色’], c[’淺灰色’], c[’橙色’], c[’藍色’], c[’藍色’]]# 畫斜率圖for i, color in zip(np.arange(len(df.columns)), category_colors): ax.plot(df.index, df.iloc[:, i], marker=’o’, color=color) # 設置數據標簽及其文字顏色 ax.text(-0.03, df.iloc[0, i], df.columns[i] + ’ ’ + ’{:.0%}’.format(df.iloc[0, i]), ha=’right’, va=’center’, color=color, fontsize=16) ax.text(1.06, df.iloc[1, i], ’{:.0%}’.format(df.iloc[1, i]), ha=’left’, va=’center’, color=color, fontsize=16)# 設置 Y 軸刻度范圍ax.set_ylim(df.values.min()-0.02, df.values.max()+0.01)# 隱藏 Y 軸ax.yaxis.set_visible(False)# 隱藏邊框ax.spines[’top’].set_visible(False)ax.spines[’right’].set_visible(False)ax.spines[’left’].set_visible(False)ax.spines[’bottom’].set_visible(False)# 隱藏 X 軸的刻度線ax.tick_params(axis=’x’, which=’major’, length=0)# 設置坐標標簽字體大小和顏色ax.tick_params(labelsize=16, colors=c[’灰色’])plt.show()

運行之后,便得到上面那張圖。

你可以前往 https://github.com/linjiwx/mp 下載畫圖用的數據和完整代碼。

對于同一組數據,不同的人可能會有不同的觀察視角,對它們進行可視化,往往也存在多種不同的解決方案,這里介紹的方法,并不是唯一正確的答案。關鍵在于,圖表的設計者想要表達什么信息?是否讓觀眾正確且快速地理解了想要表達的信息?

不同類型的圖表,有著不同的優勢和劣勢。

斜率圖的優勢,是能快速看到每個類別前后發生的變化,并能根據線條的陡峭程度,直觀地感受到變化的幅度。

斜率圖的劣勢,是看不出整體與部分的占比關系。另外,如果類別的順序很重要,那么也不適合使用斜率圖,因為類別會根據數值大小自動進行排列。

最后,留給你一道思考題:在你看到過的各種數據中,有哪些數據是適合用斜率圖進行對比分析的?

當你不知道該選擇什么類型的圖表時,不妨停下來想一想,你希望讓觀眾了解什么或者做什么?

以上就是python 繪制斜率圖進行對比分析的詳細內容,更多關于python 對比分析的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 黑人激情视频 | 国产精品国产三级在线专区 | 国内日本精品视频在线观看 | chinese在线播放91国内 | 狠狠色噜噜综合社区 | 免费在线播放黄色 | 成年在线观看视频免费看 | 成人在线视频国产 | 欧美专区一区二区三区 | 交在线观看网站视频 | 国产一级片毛片 | 国产精品三级在线 | 一级做a爰片| 成人国产激情福利久久精品 | 九色婷婷 | 一级做a爱片特黄在线观看免费看 | 午夜国产精品久久影院 | 亚洲热图 | 青青色在线观看 | 天堂亚洲国产日韩在线看 | 亚洲国产日韩在线人高清不卡 | 91久久在线| 爱色视频 | 蜜桃成人精品 | 欧美成人三级一区二区在线观看 | 国产精品又黄又爽又色视频 | 精品精品国产高清a毛片 | 6080亚洲精品一区 | 丁香婷婷久久 | 久久亚洲精品人成综合网 | 亚洲精品国产一区二区三区在 | 亚洲精品另类有吗中文字幕 | 精品国产理论在线观看不卡 | 娇小被黑人巨嗷嗷叫 | 国产资源在线视频 | 免费看黄色一级片 | 亚洲日本在线观看视频 | 99久久伊人一区二区yy5o99 | 国产精品视频一区二区三区 | 亚洲精品久久 | 国产精品久久vr专区 |