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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

python matplotlib 绘图

發(fā)布時(shí)間:2024/9/30 python 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python matplotlib 绘图 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1.散點(diǎn)圖

import numpy as np import matplotlib.pyplot as plt from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei']#正常顯示字體 mpl.rcParams['axes.unicode_minus'] = False#正常顯示圖像中的負(fù)號(hào)x=np.random.randint(low=2,high=10,size=10) y=np.random.randint(low=2,high=10,size=10) plt.scatter(x,y) plt.title('散點(diǎn)圖') plt.xlabel('x') plt.ylabel('y') plt.show()

2.折線圖

import numpy as np import matplotlib.pyplot as plt from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = Falsex=np.linspace(start=0,stop=30,num=300) y=np.sin(x) plt.plot(x,y) plt.title('折線圖') plt.xlabel('x') plt.ylabel('y') plt.show()

3.柱狀圖
更多柱狀圖
python畫(huà)柱狀圖并數(shù)值顯示

import numpy as np import matplotlib.pyplot as plt from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = Falsex=['a','b','c','d'] y=[3,5,7,9] plt.bar(x,y,width=0.5) plt.title('柱狀圖') plt.xlabel('x') plt.ylabel('y') plt.show()

4.直方圖

import numpy as np import matplotlib.pyplot as plt from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = Falsex=np.random.normal(loc=10,scale=1,size=100)plt.hist(x,bins=50) plt.title('直方圖') plt.xlabel('x') plt.ylabel('y') plt.show()

6.圖形屬性
常用的顏色屬性

cnames = { 'aliceblue': '#F0F8FF', 'antiquewhite': '#FAEBD7', 'aqua': '#00FFFF', 'aquamarine': '#7FFFD4', 'azure': '#F0FFFF', 'beige': '#F5F5DC', 'bisque': '#FFE4C4', 'black': '#000000', 'blanchedalmond': '#FFEBCD', 'blue': '#0000FF', 'blueviolet': '#8A2BE2', 'brown': '#A52A2A', 'burlywood': '#DEB887', 'cadetblue': '#5F9EA0', 'chartreuse': '#7FFF00', 'chocolate': '#D2691E', 'coral': '#FF7F50', 'cornflowerblue': '#6495ED', 'cornsilk': '#FFF8DC', 'crimson': '#DC143C', 'cyan': '#00FFFF', 'darkblue': '#00008B', 'darkcyan': '#008B8B', 'darkgoldenrod': '#B8860B', 'darkgray': '#A9A9A9', 'darkgreen': '#006400', 'darkkhaki': '#BDB76B', 'darkmagenta': '#8B008B', 'darkolivegreen': '#556B2F', 'darkorange': '#FF8C00', 'darkorchid': '#9932CC', 'darkred': '#8B0000', 'darksalmon': '#E9967A', 'darkseagreen': '#8FBC8F', 'darkslateblue': '#483D8B', 'darkslategray': '#2F4F4F', 'darkturquoise': '#00CED1', 'darkviolet': '#9400D3', 'deeppink': '#FF1493', 'deepskyblue': '#00BFFF', 'dimgray': '#696969', 'dodgerblue': '#1E90FF', 'firebrick': '#B22222', 'floralwhite': '#FFFAF0', 'forestgreen': '#228B22', 'fuchsia': '#FF00FF', 'gainsboro': '#DCDCDC', 'ghostwhite': '#F8F8FF', 'gold': '#FFD700', 'goldenrod': '#DAA520', 'gray': '#808080', 'green': '#008000', 'greenyellow': '#ADFF2F', 'honeydew': '#F0FFF0', 'hotpink': '#FF69B4', 'indianred': '#CD5C5C', 'indigo': '#4B0082', 'ivory': '#FFFFF0', 'khaki': '#F0E68C', 'lavender': '#E6E6FA', 'lavenderblush': '#FFF0F5', 'lawngreen': '#7CFC00', 'lemonchiffon': '#FFFACD', 'lightblue': '#ADD8E6', 'lightcoral': '#F08080', 'lightcyan': '#E0FFFF', 'lightgoldenrodyellow': '#FAFAD2', 'lightgreen': '#90EE90', 'lightgray': '#D3D3D3', 'lightpink': '#FFB6C1', 'lightsalmon': '#FFA07A', 'lightseagreen': '#20B2AA', 'lightskyblue': '#87CEFA', 'lightslategray': '#778899', 'lightsteelblue': '#B0C4DE', 'lightyellow': '#FFFFE0', 'lime': '#00FF00', 'limegreen': '#32CD32', 'linen': '#FAF0E6', 'magenta': '#FF00FF', 'maroon': '#800000', 'mediumaquamarine': '#66CDAA', 'mediumblue': '#0000CD', 'mediumorchid': '#BA55D3', 'mediumpurple': '#9370DB', 'mediumseagreen': '#3CB371', 'mediumslateblue': '#7B68EE', 'mediumspringgreen': '#00FA9A', 'mediumturquoise': '#48D1CC', 'mediumvioletred': '#C71585', 'midnightblue': '#191970', 'mintcream': '#F5FFFA', 'mistyrose': '#FFE4E1', 'moccasin': '#FFE4B5', 'navajowhite': '#FFDEAD', 'navy': '#000080', 'oldlace': '#FDF5E6', 'olive': '#808000', 'olivedrab': '#6B8E23', 'orange': '#FFA500', 'orangered': '#FF4500', 'orchid': '#DA70D6', 'palegoldenrod': '#EEE8AA', 'palegreen': '#98FB98', 'paleturquoise': '#AFEEEE', 'palevioletred': '#DB7093', 'papayawhip': '#FFEFD5', 'peachpuff': '#FFDAB9', 'peru': '#CD853F', 'pink': '#FFC0CB', 'plum': '#DDA0DD', 'powderblue': '#B0E0E6', 'purple': '#800080', 'red': '#FF0000', 'rosybrown': '#BC8F8F', 'royalblue': '#4169E1', 'saddlebrown': '#8B4513', 'salmon': '#FA8072', 'sandybrown': '#FAA460', 'seagreen': '#2E8B57', 'seashell': '#FFF5EE', 'sienna': '#A0522D', 'silver': '#C0C0C0', 'skyblue': '#87CEEB', 'slateblue': '#6A5ACD', 'slategray': '#708090', 'snow': '#FFFAFA', 'springgreen': '#00FF7F', 'steelblue': '#4682B4', 'tan': '#D2B48C', 'teal': '#008080', 'thistle': '#D8BFD8', 'tomato': '#FF6347', 'turquoise': '#40E0D0', 'violet': '#EE82EE', 'wheat': '#F5DEB3', 'white': '#FFFFFF', 'whitesmoke': '#F5F5F5', 'yellow': '#FFFF00', 'yellowgreen': '#9ACD32'}

marker可選參數(shù)

'.' point marker ',' pixel marker 'o' circle marker 'v' triangle_down marker '^' triangle_up marker '<' triangle_left marker '>' triangle_right marker '1' tri_down marker '2' tri_up marker '3' tri_left marker '4' tri_right marker 's' square marker 'p' pentagon marker '*' star marker 'h' hexagon1 marker 'H' hexagon2 marker '+' plus marker 'x' x marker 'D' diamond marker 'd' thin_diamond marker '|' vline marker '_' hline marker

linestyle可選參數(shù):

'-' solid line style '--' dashed line style '-.' dash-dot line style ':' dotted line style import numpy as np import matplotlib.pyplot as plt from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = Falsex=np.linspace(start=0,stop=30,num=30) y=np.sin(x) plt.plot(x,y,color='r',marker='d',linestyle='--',linewidth=2,alpha=0.8) plt.title("顏色:紅,標(biāo)記:菱形,線性:虛線,線寬:2,透明度:0.8") plt.xlabel('x') plt.ylabel('y') plt.show()

7.子圖

import numpy as np import matplotlib.pyplot as plt from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = Falsefig=plt.figure(figsize=(10,10))#指定畫(huà)布大小 ax1=fig.add_subplot(2,2,1)#添加一個(gè)子圖,返回子圖句柄 ax2=fig.add_subplot(2,2,2) ax3=fig.add_subplot(2,2,3) ax4=fig.add_subplot(2,2,4)#子圖1 x=np.linspace(start=0,stop=30,num=30) y=sin(x) ax1.plot(x,y) ax1.set_xlabel('x') ax1.set_ylabel('y') ax1.set_title('子圖1')#子圖2 x=np.random.randint(low=2,high=10,size=10) y=np.random.randint(low=2,high=10,size=10) ax2.scatter(x,y) ax2.set_xlabel('x') ax2.set_ylabel('y') ax2.set_title('子圖2') #子圖3 x=['a','b','c','d'] y=[3,5,7,9] ax3.bar(x,y,width=0.5) ax3.set_xlabel('x') ax3.set_ylabel('y') ax3.set_title('子圖3')#子圖4 x=np.random.normal(loc=10,scale=1,size=100) ax4.hist(x,bins=50) ax4.set_xlabel('x') ax4.set_ylabel('y') ax4.set_title('子圖4')plt.show()

或者

import numpy as np import matplotlib.pyplot as plt from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = Falsefig=plt.figure(figsize=(10,10))#指定畫(huà)布大小 #fig.suptitle('大標(biāo)題', fontsize=18)#子圖1 plt.subplot(2,2,1) x=np.linspace(start=0,stop=30,num=30) y=sin(x) plt.plot(x,y) plt.xlabel('x') plt.ylabel('y') plt.title('子圖1')#子圖2 plt.subplot(2,2,2) x=np.random.randint(low=2,high=10,size=10) y=np.random.randint(low=2,high=10,size=10) plt.scatter(x,y) plt.xlabel('x') plt.ylabel('y') plt.title('子圖2') #子圖3 plt.subplot(2,2,3) x=['a','b','c','d'] y=[3,5,7,9] plt.bar(x,y,width=0.5) plt.xlabel('x') plt.ylabel('y') plt.title('子圖3')#子圖4 plt.subplot(2,2,4) x=np.random.normal(loc=10,scale=1,size=100) plt.hist(x,bins=50) plt.xlabel('x') plt.ylabel('y') plt.title('子圖4') plt.show()

8.三維圖:曲線

import numpy as np from mpl_toolkits.mplot3d import Axes3D import matplotlib.pyplot as plt from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = Falsefig=plt.figure(figsize=(10,10))#指定畫(huà)布大小 ax=fig.gca(projection='3d')#指定為3D#子圖1 theta=np.linspace(-4*np.pi,4*np.pi,100)z=np.linspace(start=-2,stop=2,num=100) r=z**2+1 x=r*np.sin(theta) y=z*np.cos(theta) ax.plot(x,y,z) plt.show()

9.三維圖:散點(diǎn)圖

import numpy as np from mpl_toolkits.mplot3d import Axes3D import matplotlib.pyplot as plt from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = Falsefig=plt.figure(figsize=(10,10))#指定畫(huà)布大小 ax=fig.gca(projection='3d')#指定為3D#子圖1 x1=np.random.random(100)*20 y1=np.random.random(100)*20 z=x1+y1 ax.scatter(x1,y1,z) plt.show()

10.三維圖:曲面圖

import numpy as np from mpl_toolkits.mplot3d import Axes3D import matplotlib.pyplot as plt from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = Falsefig=plt.figure(figsize=(10,10))#指定畫(huà)布大小 ax=fig.gca(projection='3d')#指定為3Dx=np.arange(-5,5,0.25) y=np.arange(-5,5,0.25) x,y=np.meshgrid(x,y)#用np.meshgrid生成坐標(biāo)網(wǎng)格矩陣 z=np.sin(np.sqrt(x**2+y**2)) #使用plot_surface函數(shù) #cmap=cm.coolwarm是顏色屬性 surf=ax.plot_surface(x,y,z,cmap=cm.coolwarm) plt.show()

11.動(dòng)態(tài)圖

import matplotlib.pyplot as plt import numpy as npPOINTS = 100 sin_list = [0] * POINTS indx = 0 # fig, ax = plt.subplots() while True:if indx == 40:indx = 0indx += 1# 更新繪圖數(shù)據(jù)sin_list = sin_list[1:] + [np.sin((indx / 20) * np.pi)]# 顯示時(shí)間plt.pause(0.01)# 清除上一次顯示plt.cla()plt.plot(sin_list)# plt.draw()也可以放在這個(gè)位置,不會(huì)阻塞 plt.draw()

12.使圖片可以手動(dòng)保存
????前面畫(huà)的圖,我們只能copy,不能自己手動(dòng)保存。
添加一行代碼import matplotlib; matplotlib.use('TkAgg') 即可實(shí)現(xiàn)

????不加這行代碼

????加

import numpy as np import matplotlib.pyplot as plt import matplotlib; matplotlib.use('TkAgg') from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = False x=np.linspace(-2*np.pi,2*np.pi,400) siny=np.sin(x) cosy=np.cos(x)plt.plot(x,siny,color="red",label="sin(x)") plt.plot(x,cosy,color="blue",label="cos(x)",linestyle="--") plt.xlabel("輸入數(shù)據(jù) x") plt.ylabel("sin(x) 或者 cos(x)") plt.title("三角函數(shù)圖") plt.legend() plt.show()

然后我們可以手動(dòng)保存,可以保存為不同格式。

13.調(diào)整坐標(biāo)軸刻度大小
在繪圖里加一行代碼即可

plt.tick_params(labelsize=23)

14.高級(jí)三維 曲線圖

import numpy as np from mpl_toolkits.mplot3d import Axes3D import matplotlib.pyplot as plt from pylab import * mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = Falsefig=plt.figure(figsize=(10,10))#指定畫(huà)布大小 ax=fig.gca(projection='3d')#指定為3D#子圖1 theta=np.linspace(-4*np.pi,4*np.pi,100) x=np.sin(theta) y=np.cos(theta)ax.plot(np.ones(len(x)),np.arange(len(x)),x) ax.plot(2*np.ones(len(x)),np.arange(len(x)),x) ax.plot(3*np.ones(len(y)),np.arange(len(y)),y) #plt.axis('off')#關(guān)閉所有坐標(biāo)軸 ax.set_xlabel('個(gè)數(shù)') ax.set_ylabel('長(zhǎng)度') ax.set_zlabel('數(shù)') plt.legend() plt.show()


作者:電氣余登武

與50位技術(shù)專家面對(duì)面20年技術(shù)見(jiàn)證,附贈(zèng)技術(shù)全景圖

總結(jié)

以上是生活随笔為你收集整理的python matplotlib 绘图的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。