python 數據可視化(一)


數據可視化指的是通過可視化表示來探索數據

數據挖掘指的是使用代碼來探索數據集的規律和關聯

 

  使用matplotlib可制作的各種圖表

 繪制簡單的折線圖

# Author:song
import matplotlib.pyplot as plt
squre = [7,6,8,3,5,9,2]
plt.plot(squre) 
plt.show() #顯示圖形

結果圖

調整可視化的各個方面,改善這個圖形的可讀性

# Author:song
import matplotlib.pyplot as plt
squre = [7,6,8,3,5,9,2]
# 設置圖表標題,並給坐標軸加上標簽
plt.plot(squre,linewidth=5)#參數linewidth決定了plot()繪制的線條的粗細。
plt.title('Example title',fontsize=24) #函數title()給圖表指定標題
plt.xlabel('value',fontsize=14) #函數xlabel()和ylabel()讓你能夠為每條軸設置標題
plt.ylabel('Example value',fontsize=14)
plt.tick_params(axis='both',labelsize=14) #而函數tick_params()設置刻度的樣式,其中指定的實參將影響x軸和y軸上的刻度(axes='both'),並將刻度標記的字號設置為14(labelsize=14)。
plt.show()

當你向plot()提供一系列數字時,它假設第一個數據點對應的x坐標值為0,為改變這種默認行為,我們可以給plot()同時提供輸入值和輸出值

# Author:song
import matplotlib.pyplot as plt
input_num = [1,2,3,4,5,6]
squre = [x**2 for x in input_num]
plt.plot(input_num,squre,linewidth=5)
plt.title('Example title',fontsize=24) 
plt.xlabel('value',fontsize=14) 
plt.ylabel('Example value',fontsize=14)
plt.tick_params(axis='both',labelsize=14) 
plt.show()

結果圖

  使用 scatter()繪制散點圖並設置其樣式

  有時候,需要繪制散點圖並設置各個數據點的樣式。你可能想以一種顏色顯示較小的值,另一種顏色顯示較大的值。繪制大型數據集時,你還可以對每個點都設置同樣的樣式, 再使用不同的樣式選項重新繪制某些點,以突出它們。

import matplotlib.pyplot as plt
x_values = [1,4,5,6,3,1,8,9]
y_values = [9,6,5,4,3,2,1,7]
plt.scatter(x_values, y_values, s=100)
plt.show()

結果

自定義樣式

plt.scatter(x_values, y_values, c='red', edgecolor='none', s=40)#c代表顏色,edgecolor=‘none’表示沒有輪廓

#可以使用RGB顏色模式自定義顏色
plt.scatter(x_values, y_values, c=(0, 0, 0.8), edgecolor='none', s=40) 

使用顏色映射,從起始顏色漸變到結束顏色,於突出數據的規律

import matplotlib.pyplot as plt
x_values = list(range(1,101))
y_values = [x**2 for x in x_values]
plt.scatter(x_values,y_values, c=y_values,cmap=plt.cm.Blues,edgecolors='none',s=40)# 將參數c設置成了一個y值列表,並使用參數cmap告訴pyplot使用哪個顏色映射
plt.axis([0, 80, 0, 6400]) ## 設置每個坐標軸的取值范圍,函數axis()要求提供四個值:x和y坐標軸的最小值和最大值
plt.show()

結果

要讓程序自動將圖表保存到文件中,可將對plt.show()的調用替換為對plt.savefig()的調用

plt.savefig('squares_plot.png', bbox_inches='tight') #第一個實參指定要以什么樣的文件名保存圖表,這個文件將存儲到當前所在的目錄中;第二個實參指定將圖表多余的空白區域裁剪掉

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM