Python可视化中Matplotlib(4.三种设置样式方法、设置坐标刻度以及标签、设置显示出特殊字符)

1.三种设置方式

  (1)向方法传入关键字参数 上一节已经总结过,一直在使用

  (2)对实例使用一系列的setter方法

          具体的方法直接看代码 

import matplotlib.pyplot as plt   # 导入绘图模块
import numpy as np               #  导入需要生成数据的numpy模块
'''
(2)对实例使用一系列的setter方法
'''
x = np.arange(0,10,1)
'''l1,  l2,  l3, 加逗号与不加的区别
   不加逗号的类型是: [<matplotlib.lines.Line2D object at 0x0000023696DB12B0>]
   加逗号的类型是:   Line2D(_line0)
'''
l1, = plt.plot(x,np.sin(x)) # 直接获取图
l2, = plt.plot(x,np.cos(x))
l3, = plt.plot(x,x*2)
'''设线条颜色'''
l1.set_color('r')
l2.set_color('b')
'''设置线宽'''
l3.set_linewidth(5)
'''设置样式'''
l3.set_linestyle('--')
'''其他设置的方法是一样的方法'''
plt.show()

   (3) 使用setp()方法  

'''
(3) 使用setp()方法 
    setp():p:property(属性)
'''
x = np.arange(0,10,0.1)

line, = plt.plot(x,np.sin(x))
line2, = plt.plot(x,np.cos(x))
'''对哪条线条进行设置,就把这条线对应的对象传入进去'''
plt.setp(line2,ls='--',lw=3,marker='o')
plt.show()

2. 设置X、Y轴坐标刻度

     (1)普通的方法:  设置x轴的刻度:xticks() 设置y轴的刻度:yticks()

'''
    设置x轴的刻度:xticks()
    设置y轴的刻度:yticks()
    参数说明: 第一个是刻度的范围值,以及个数
             第二个是坐标名 (要和第一个的个数对应),没有的话就是第一个设置刻度值
             fontsize : 设置刻度的字体大小
             rotation:  要旋转的度数值             
'''
x = np.random.randn(100)
plt.plot(x.cumsum(),)   # cumsum() 累加和
'''设置x轴的刻度'''
plt.xticks(np.linspace(0,100,5),list('abcde'),fontsize=15)
'''设置y轴的刻度'''
plt.yticks(np.linspace(-10,20,3),['max','min',0],fontsize=15,rotation=60)
plt.show()

     (2)通过面向对象的方法

    利用   set_xticks(),set_yticks(),set_xticklabels()  来设置

'''面向对象的方法'''
'''set_xticks(),set_yticks(),set_xticklabels()'''
x = np.random.randn(100)
axes = plt.subplot(111)
axes.plot(x.cumsum())
'''对x轴和y轴刻度值'''
axes.set_xticks([0,25,50,75,100])
axes.set_yticks([-10,-5,0,5,10])
'''设置坐标名'''
axes.set_xticklabels(list('abcde'))
plt.show()

3.正弦余弦  使其π,平方等特殊字符显示出来显示出来           

LaTex 语法:用$\pi$等表达式在图表上写上希腊字母
'''显示出特殊字符'''
x = np.arange(-np.pi,np.pi,0.01)
plt.plot(np.sin(x)**2)
plt.plot(np.cos(x)**2)
print(len(x))
plt.yticks([0,1],[0,'max'])
'''给x求个长度,把它均等分'''
'''LaTex 语法:用$\pi$等表达式在图表上写上希腊字母'''
# x的长度为629 ,分为5份 一份 157.25
plt.xticks([0,157.25,157.25*2,157.25*3,157.25*4],['-$\pi$','-$\pi/2$',0,'$\pi$/2','$\pi$'])
'''设置标题,使用平方正常显示'''
plt.title('$f(x)=sin(x)^2$'+'  and  '+'$f(x)=cos(x)^2$')
plt.show()

    

猜你喜欢

转载自blog.csdn.net/wei18791957243/article/details/83865907