pythonMatplotlib 可视化总结归纳(一) 折线图、散点图及其坐标轴属性设置

    xiaoxiao2023-10-21  148

    一、数据准备

    1、python 内置函数 range

    创建一个整数列表,只限于整数

    range(start, stop, step)

    计数从start开始,默认从0开始,stop结束,但不包含stop,step为步长,默认为1

    2. numpy中的arange

    语法与range类似,由开始、结束、步长组成,步长默认为1

    import numpy as np print (np.arange(0,1,0.1))

    输出:

    [ 0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9]

     3. numpy中的linspace模块,

    np.linspace(start, end, num, endpoint=True)

    计数从start开始,默认从0开始,stop结束, num表示总个数,endpoint默认为false,设置不包含终值

    import numpy as np print(np.linspace(0, 1, 10,endpoint=False)) print(np.linspace(0, 1, 10,endpoint=True))

    输出:

    [ 0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9] [ 0. 0.11111111 0.22222222 0.33333333 0.44444444 0.55555556 0.66666667 0.77777778 0.88888889 1. ]

    二、图的类型 (绘制折线图、散点图,细节会在第三部分讲解)

    1.折线图

    #绘制折线图 import matplotlib.pyplot as plt month = [1,2,3,4,5,6] sales = [10,12,12.4,13,16,18] plt.plot(month,sales) plt.title("Sales for the first 6 months") #图名 plt.xlabel("month")#x轴标签 plt.ylabel("sales")#y轴标签 plt.tick_params(axis='both')#x,y轴都有刻度 plt.savefig('.//result//3.1.png')#保存图片,一定要在show之前保存图片,否则保存的图片就为空白 plt.show(

    2. 散点图

    plt.scatter(month,sales) import matplotlib.pyplot as plt month = [1,2,3,4,5,6] sales = [10,12,12.4,13,16,18] plt.scatter(month,sales) plt.title("Sales for the first 6 months") #图名 plt.xlabel("month")#x轴标签 plt.ylabel("sales")#y轴标签 plt.tick_params(axis='both')#x,y轴都有刻度 plt.savefig('.//result//3.2.png')#保存图片,一定要在show之前保存图片,否则保存的图片就为空白 plt.show()

    总结:

    import matplotlib.pyplot as plt #绘制折线图 plt.plot(x,y) #绘制散点图 plt.scatter(x,y)

     三、图的细节问题处理

    改变如图所示

    图表名的属性折线的属性坐标轴的属性刻度值的属性

    1.图表名的属性(title)  

    fontsize设置字体大小,默认12,可以写字体大小或参数,可选参数 ['xx-small', 'x-small', 'small', 'medium', 'large','x-large', 'xx-large']fontweight设置字体粗细,可选参数 ['light', 'normal', 'medium', 'semibold', 'bold', 'heavy', 'black']fontstyle设置字体类型,可选参数[ 'normal' | 'italic' | 'oblique' ],italic斜体,oblique倾斜verticalalignment设置水平对齐方式 ,可选参数 : 'center' , 'top' , 'bottom' ,'baseline' horizontalalignment设置垂直对齐方式,可选参数:left,right,centerrotation(旋转角度)可选参数为:vertical,horizontal 也可以为数字alpha透明度,参数值0至1之间 plt.title('Graph',fontsize='large',fontweight='bold') 设置字体大小与格式 plt.title('Graph',color='blue') 设置字体颜色 plt.title('Graph',loc ='left') 设置字体位置

    2.折线属性(plot)

    颜色

    c  青红(cyan)  r  红色(red)m  品红(magente)g  绿色(green) y  黄色(yellow)k  黑色(black)w  白色(white)b 蓝色(blue) #绘制红色折线 plt.plot(month,sales,color = 'r')

    折线粗细(linewidth)

    plt.plot(month,sales,linewidth = 2) 

    在plt.plot加入如下参数时,改变折线形式

    -  直线-- 虚线-.  一横一点:   细小虚线s  方形  o  圆形 D 菱形h  六角形 H  六角形*  星号  +  加号x  x形d  菱形p  五角形 plt.plot(month,sales,'-.',color ='r)

    3.坐标轴的属性 

    设置坐标轴粗细

    #设置坐标轴粗细 ax=plt.gca();#获得坐标轴的句柄 ax.spines['bottom'].set_linewidth(2);###设置底部坐标轴的粗细 ax.spines['left'].set_linewidth(2);####设置左边坐标轴的粗细 ax.spines['right'].set_linewidth(2);###设置右边坐标轴的粗细 ax.spines['top'].set_linewidth(2);####设置上部坐标轴的粗细

    设置横纵坐标的名称以及对应字体格式(xlabel,ylabel)

    #参数值的调换参考图标名的可选参数 font= {'family' : 'Times New Roman','weight' : 'normal','size' : 30,}    plt.xlabel('round',font) plt.ylabel('value',font)

    坐标轴范围设置,两种,分别是xlim,ylinm 和 axis

    plt.xlim(-6,6) plt.ylim(-500,500) plt.axis([xmin, xmax, ymin, ymax])

     

     

     4.坐标轴刻度属性

    plt.tick_params(axis='both',labelsize = 15)#x,y轴都有刻度

     将以上介绍的放在一个代码中,实现设置属性的功能

    #绘制折线图 import matplotlib.pyplot as plt month = [1,2,3,4,5,6] sales = [10,12,12.4,13,16,18] #设置折线属性 plt.plot(month,sales,'-.',color = 'r',linewidth = '4') #设置图名属性 plt.title("Sales for the first 6 months",fontsize = 'large',fontweight = 'bold',color = 'b') #设置坐标轴属性 font= {'family' : 'Times New Roman','weight' : 'normal','size' : 30} plt.xlabel("month",font)#x轴标签 plt.ylabel("sales",font)#y轴标签 #设置坐标轴粗细 ax=plt.gca();#获得坐标轴的句柄 ax.spines['bottom'].set_linewidth(2);###设置底部坐标轴的粗细 ax.spines['left'].set_linewidth(2);####设置左边坐标轴的粗细 ax.spines['right'].set_linewidth(2);###设置右边坐标轴的粗细 ax.spines['top'].set_linewidth(2);####设置上部坐标轴的粗细 #设置坐标轴刻度的属性 plt.tick_params(axis='both',labelsize = 15) plt.savefig('.//result//3.5.png')#保存图片,一定要在show之前保存图片,否则保存的图片就为空白 plt.show()

    虽然很丑,但是将图名、坐标轴等所有属性都进行了设置 

    最后,推荐一波自己的公众号,Python机器学习进阶之路 

    最新回复(0)