Matplotlib绘制图形(matplotlib绘制图形 输出y=x*x图像)
Matplotlib绘制图形
基本参数
设置标题 plt.title()
设置坐标轴标签 ply.xlabel() plt.ylabel()
设置坐标轴范围 plt.xlim() plt.ylim()
设置图例 plt.legend()
设置图像大小 plt.figure()
折线图
plot()
参数:
x x轴上的数值
y y轴上的数值
ls 线条风格
lw 线条宽度
c 颜色
label 标签文本
import pandas as pd import numpy as np import matplotlib.pyplot as plt df=pd.DataFrame(np.random.randn(5,4),columns=['a','b','c','d']) x=df.index y=df['a'] plt.plot(x,y,ls='-',lw=2,c='r',label='a') plt.legend() plt.show() 复制代码
import pandas as pd import numpy as np import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['FangSong'] # 指定默认字体 plt.rcParams['axes.unicode_minus'] = False df=pd.DataFrame(np.random.randn(5,4),columns=['a','b','c','d']) x=df.index y=df['a'] plt.plot(x,y,ls='-',lw=2,c='r') y=df['b'] plt.plot(x,y,ls='-',lw=2,c='b') y=df['c'] plt.plot(x,y,ls='-',lw=2,c='y') y=df['d'] plt.plot(x,y,ls='-',lw=2,c='g') plt.title('折线图') # 设置图例 plt.legend(df.columns) plt.show() 复制代码
柱状图
bar()
基本参数
x x轴上的数值
y y轴上的数值
color 颜色
label 标签文本
plt.rcParams['font.sans-serif'] = ['FangSong'] # 指定默认字体 plt.rcParams['axes.unicode_minus'] = False df=pd.DataFrame(np.random.rand(5,4),columns=['a','b','c','d']) x=df.index y=df['a'] plt.ylabel('x') plt.xlabel('y') plt.title('柱状图') plt.bar(x,y,color='b') plt.show() 复制代码
条形图(横柱状图)
barh()
import pandas as pd import numpy as np import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['FangSong'] # 指定默认字体 plt.rcParams['axes.unicode_minus'] = False df=pd.DataFrame(np.random.rand(5,4),columns=['a','b','c','d']) x=df.index y=df['a'] plt.ylabel('x') plt.xlabel('y') plt.title('柱状图') plt.barh(x,y,color='b') plt.show() 复制代码
散点图
scatter()
import pandas as pd import numpy as np import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['FangSong'] # 指定默认字体 plt.rcParams['axes.unicode_minus'] = False df=pd.DataFrame(np.random.rand(100,4),columns=['a','b','c','d']) x=df.index y=df['a'] plt.ylabel('x') plt.xlabel('y') plt.title('散点图') plt.scatter(x,y,color='b') plt.show() 复制代码
s 设置标记的大小
marker 设置标记的形状
import pandas as pd import numpy as np import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['FangSong'] # 指定默认字体 plt.rcParams['axes.unicode_minus'] = False df=pd.DataFrame(np.random.rand(100,4),columns=['a','b','c','d']) x=df.index y=df['a'] plt.ylabel('x') plt.xlabel('y') plt.title('散点图') plt.scatter(x,y,s=5,color='b',marker=6) plt.show() 复制代码
marker 参数
============================== ====== ========================================= marker symbol description ============================== ====== ========================================= ``"."`` |m00| point ``","`` |m01| pixel ``"o"`` |m02| circle ``"v"`` |m03| triangle_down ``"^"`` |m04| triangle_up ``"<"`` |m05| triangle_left ``">"`` |m06| triangle_right ``"1"`` |m07| tri_down ``"2"`` |m08| tri_up ``"3"`` |m09| tri_left ``"4"`` |m10| tri_right ``"8"`` |m11| octagon ``"s"`` |m12| square ``"p"`` |m13| pentagon ``"P"`` |m23| plus (filled) ``"*"`` |m14| star ``"h"`` |m15| hexagon1 ``"H"`` |m16| hexagon2 ``"+"`` |m17| plus ``"x"`` |m18| x ``"X"`` |m24| x (filled) ``"D"`` |m19| diamond ``"d"`` |m20| thin_diamond ``"|"`` |m21| vline ``"_"`` |m22| hline ``0`` (``TICKLEFT``) |m25| tickleft ``1`` (``TICKRIGHT``) |m26| tickright ``2`` (``TICKUP``) |m27| tickup ``3`` (``TICKDOWN``) |m28| tickdown ``4`` (``CARETLEFT``) |m29| caretleft ``5`` (``CARETRIGHT``) |m30| caretright ``6`` (``CARETUP``) |m31| caretup ``7`` (``CARETDOWN``) |m32| caretdown ``8`` (``CARETLEFTBASE``) |m33| caretleft (centered at base) ``9`` (``CARETRIGHTBASE``) |m34| caretright (centered at base) ``10`` (``CARETUPBASE``) |m35| caretup (centered at base) ``11`` (``CARETDOWNBASE``) |m36| caretdown (centered at base) 复制代码
多图
subplot(1,2,1)
第一个参数表示 几行分布
第二个参数表示 一行记个图
第三个参数表示 图显示的位置
import pandas as pd import numpy as np import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['FangSong'] # 指定默认字体 plt.rcParams['axes.unicode_minus'] = False df=pd.DataFrame(np.random.rand(100,4),columns=['a','b','c','d']) x=df.index y=df['a'] plt.subplot(2,3,1) plt.scatter(x,y,color='b') plt.subplot(2,3,2) y=df['b'] plt.scatter(x,y,s=5,color='b',marker=6) plt.subplot(2,3,6) y=df['b'] plt.scatter(x,y,s=5,color='b',marker=6) plt.show() 复制代码
subplots_adjust设置图像高宽
subplots 减少区域分块后 设置子图的title 和xy轴
import pandas as pd import numpy as np import matplotlib.pyplot as plt plt.rcParams['font.sans-serif'] = ['FangSong'] # 指定默认字体 plt.rcParams['axes.unicode_minus'] = False df=pd.DataFrame(np.random.rand(100,4),columns=['a','b','c','d']) x=df.index y=df['a'] fig,ax=plt.subplots(2,3) ax1=ax[0][0] ax1.set_title('1') ax1.set_ylabel('y') ax1.set_xlabel('x') ax1.scatter(x,y,color='b') ax2=ax[0][2] ax2.set_title('2') ax2.scatter(x,y,color='r') ax3=ax[1][1] ax3.set_title('3') ax3.scatter(x,y,color='g') plt.subplots_adjust(wspace=2,hspace=2) plt.show() 复制代码
作者:小旺不正经
链接:https://juejin.cn/post/7036203099236614175
伪原创工具 SEO网站优化 https://www.237it.com/