python matplotlib庫繪圖實戰之繪制散點圖
一.導入庫
import matplotlib.pyplot as plt
二.設置文字
plt.title("double number", fontsize=24) plt.xlabel("number", fontsize=14) plt.ylabel("double", fontsize=14)
三.設置坐標軸參數
plt.axis([0, 15, 0, 30])
q前面兩個數為x軸的始末,後面則為y
四.繪制點
plt.scatter(2, 4, s=20) #s為點的大小 plt.show()
得到這樣子的圖
畢竟繪圖時我們不可能隻畫一個點
所以還是應該引入數組來解決問題
x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10]
將原來的2,4分別替換為x,y
為瞭在數據量較大時,簡化(偷懶)代碼,可以使用range等函數或者列表解析的方法,這裡就不贅述瞭,詳見補充1
五.對點的繼續處理
1.自定義顏色
plt.scatter(x, y, c='red', edgecolors='none', s=20)
用參數c設置點的顏色,用edgecolor設置邊緣的顏色(在較新的matpoltlib版本中,edgecolors默認為none)有關顏色的詳細資料,可見補充2
ps:將c設置為green,edgecolors設置為black,將引起極度生理不適,特別是點極度密集的曲線中,你懂的
言歸正傳,python的顏色設置通常為RGB,所以在scatter內也可以用RGB參數來設置顏色,格式如下:
plt.scatter(x, y, c=(0, 0, 0.6), edgecolors='none', s=20)
RGB小數模式詳見補充3
2.顏色映射
plt.scatter(x, y, c=y, edgecolors='none', cmap=plt.cm.Blues, s=20)
通過使用cmap,將c設置為一個數組,則可以達到顏色漸變的效果:
事實上並非所有的顏色都可以使用,僅有RGB三原色和Oranges等少數顏色可以…感覺官方文檔上說的十個好像不太行,格式必須為頭文字大寫結尾加s
one of {‘tab:blue’, ‘tab:orange’, ‘tab:green’, ‘tab:red’, ‘tab:purple’, ‘tab:brown’, ‘tab:pink’, ‘tab:gray’, ‘tab:olive’, ‘tab:cyan’} which are the Tableau Colors from the ‘tab10’ categorical palette (which is the default color cycle);
That’s all,接下來為補充部分
補充1
偷懶法1:用list函數加range函數
x = list(range(1, 100, 2))
先用range(start, end, step)等到一組數,再用list轉化為數組
偷懶法2:解析列表
y = [value * 2 for value in x]
其實就是把for循環寫到瞭裡面去
補充2
Matplotlib識別以下格式以指定顏色:
an RGB or RGBA tuple of float values in [0, 1] (e.g. (0.1, 0.2, 0.5)
or (0.1, 0.2, 0.5, 0.3)). RGBA is short for Red, Green, Blue, Alpha; a
hex RGB or RGBA string (e.g., ‘#0F0F0F’ or ‘#0F0F0F0F’);
速記十六進制RGB或RGBA字符串,相當於通過復制每個字符獲得的十六進制RGB或RGBA字符串(例如,’#abc’,相當於’#aabbcc’,或’#abcd’,相當於’#aabbccdd’);
a string representation of a float value in [0, 1] inclusive for gray
level (e.g., ‘0.5’);
單個字母字符串,即{‘b’,‘g’,‘r’,‘c’,‘m’,‘y’,‘k’,‘w’}之一,它們是藍色、綠色、紅色、青色、品紅色、黃色、黑色和白色陰影的速記號;
a X11/CSS4 (“html”) color name, e.g. “blue”; a name from the xkcd
color survey, prefixed with ‘xkcd:’ (e.g., ‘xkcd:sky blue’); a “Cn”
color spec, i.e. ‘C’ followed by a number, which is an index into the
default property cycle (rcParams[“axes.prop_cycle”] (default:
cycler(‘color’, [’#1f77b4’, ‘#ff7f0e’, ‘#2ca02c’, ‘#d62728’,
‘#9467bd’, ‘#8c564b’, ‘#e377c2’, ‘#7f7f7f’, ‘#bcbd22’, ‘#17becf’])));
the indexing is intended to occur at rendering time, and defaults to
black if the cycle does not include color. one of {‘tab:blue’,
‘tab:orange’, ‘tab:green’, ‘tab:red’, ‘tab:purple’, ‘tab:brown’,
‘tab:pink’, ‘tab:gray’, ‘tab:olive’, ‘tab:cyan’} which are the Tableau
Colors from the ‘tab10’ categorical palette (which is the default
color cycle);
補充3
RGB分為浮點數和整數兩種,在Matplotlib中,使用的是浮點數,即范圍在[0,1],而整數則是[0,255],若是要轉化,將整數除以255即浮點數形式。
總結
到此這篇關於python matplotlib庫繪圖實戰之繪制散點圖的文章就介紹到這瞭,更多相關python matplotlib繪制散點圖內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python matplotlib 繪制散點圖詳解建議收藏
- Python可視化學習之matplotlib內置單顏色
- matplotlib之屬性組合包(cycler)的使用
- Python Matplotlib繪圖基礎詳細教程
- Matplotlib可視化之自定義顏色繪制精美統計圖