当前位置:   article > 正文

python tkinter、turtle、matplotlib库图形绘制_python画图的库

python画图的库

目录

一 、tkinter库的Canvas图形绘制方法

 1.创建画布和颜色填充

2.绘制图形

 3.呈现位图图像

 4.利用鼠标事件绘图

5. 读取 

  6.Canvas画布上的函数图形绘制

二、  turtle库的图形绘制方法

1、turtle绘图的基本方法

2、介绍

 3、简单形状图形

 4、函数图形

三、 matplotlib库的图形绘制方法

1、环境安装和基本方法

2、在同一绘图对象中,利用不同颜色和标注绘制折线图形

 3、二维函数图形绘制

 4、按以下公式绘制函数图形

 5、用极坐标方式呈现如下公式的红色心状图形:​编辑

 6、创建9:6的200dpi绘图对象


一 、tkinter库的Canvas图形绘制方法

 

 

 1.创建画布和颜色填充

Canvas画布的坐标原点在左上角,默认单位是像素,x轴向右为正,y轴向下为正。

在320×240的窗体上创建高200,宽280的画布,并填充红色。

  1. from tkinter import *
  2. root=Tk()
  3. root.geometry('320x240')
  4. mycanvas=Canvas(root,bg='red',height=200,width=280)
  5. mycanvas.pack()
  6. btn1=Button(root,text='关闭',command=root.destroy)
  7. btn1.pack()
  8. root.mainloop()

2.绘制图形

在320×240的窗体上创建高200像素,宽300像素的画布,鼠标单击画布,依次绘出:从(90,10)到(200,200)点的矩形;从(90,10)到(200,200)点的内切椭圆并填充绿色;从(90,10)到(200,200)点的内切扇形并填充粉红色;连接(20,180)、(150,10)和(290,180)三点形成蓝色框线且无色填充的三角形;从(10,105)到(290,105)点的红色直线;以(50,10)为起点用RGB"#123456"颜色绘制文本标签“我的画布”。单击“清空”按钮删除所有图形。

  1. from tkinter import *
  2. root=Tk()
  3. root.geometry('320x240')
  4. def draw(event):
  5. # 画矩形
  6. mycanvas.create_rectangle(90,10,200,200)
  7. # 画椭圆,填充绿色
  8. mycanvas.create_oval(90,10,200,200,fill='green')
  9. # 画扇形
  10. mycanvas.create_arc(90,10,200,200,fill='pink')
  11. # 画多边形(三角形),前景色为蓝色,无填充色
  12. mycanvas.create_polygon(20,180,150,10,290,180,
  13. outline='blue',fill='')
  14. # 画直线
  15. mycanvas.create_line(10,105,290,105,fill='red')
  16. # 写文字,颜色为十六进制RGB字符串
  17. mycanvas.create_text(50,10,text='我的画布',fill='#123456')
  18. def delt():
  19. # 删除画布上的所有图形
  20. mycanvas.delete(ALL)
  21. mycanvas=Canvas(root,width=300,height=200)
  22. mycanvas.pack()
  23. mycanvas.bind('< Button- 1>',draw) # 画布绑定鼠标单击事件
  24. btnclear=Button(root,text='清空',command=delt)
  25. btnclear.pack()
  26. root.mainloop()

 3.呈现位图图像

Canvas画布支持呈现位图图像文件,文件类型包括GIF(无动画)、PNG等格式,但不支持JPG格式。 【例9-3】 在320×240的窗体上创建画布,并呈现C:\1.gif图像。

  1. from tkinter import *
  2. root=Tk()
  3. root.geometry('320x240')
  4. mycanvas=Canvas(root)
  5. mycanvas.pack()
  6. photo=PhotoImage(file='c:/1.gif')
  7. mycanvas.create_image(100,100,image=photo)
  8. root.mainloop()

 

 4.利用鼠标事件绘图

利用按住鼠标左键移动的鼠标事件,不断读取鼠标当前位置,每次扩张1个像素绘制椭圆点,即可在画布上留下鼠标轨迹。 【例9-4】 在320×240的窗体上创建画布,并以蓝色笔创建鼠标画板。

  1. from tkinter import *
  2. root = Tk()
  3. def move(event):
  4. x=event.x
  5. y=event.y
  6. w.create_oval(x,y,x+1,y+1,fill='blue')
  7. w = Canvas(root, width=320, height=240)
  8. w.pack()
  9. w.bind('<B1-Motion>',move)
  10. root.mainloop()

5. 读取 

读取“ecgdata.txt”的心电图数据,绘制心电图

  1. import tkinter
  2. root=tkinter.Tk()
  3. root.title('心电图')
  4. cv=tkinter.Canvas(root, width=500, height=500)
  5. cv.pack()
  6. ecg=list(open('ecgdata.txt','r'))
  7. x=0
  8. while x<len(ecg)-1:
  9. #y轴正方向向下。去掉换行符转换为整数,再向下移动300
  10. y=-int(ecg[x][:-1])+300
  11. y1=-int(ecg[x+1][:-1])+300
  12. cv.create_line(x,y,x+1,y1,fill='red')
  13. x+=1
  14. root.mainloop()

  6.Canvas画布上的函数图形绘制

 用create_line()方法可在画布上绘制直线,而随着变量的变化,用该方法连续绘制微直线,即可得到函数的图形。

“分而治之”的计算思维原则。

例如:在窗体上创建320×240的画布,以画布中心为原点,用红色绘制带箭头的x和y坐标轴,用蓝色笔绘制正弦曲线y=sinx的函数图形。其中,x、y轴的放大倍数均为40倍,即:x=40t。t以0.01的步长在-~范围内变化取值。

  1. from tkinter import *
  2. import math
  3. root = Tk()
  4. w = Canvas(root, width=320, height=240)
  5. w.pack()
  6. w0=160 # 半宽
  7. h0=120 # 半高
  8. # 画红色的坐标轴线
  9. w.create_line(0, 120, 320, 120, fill="red", arrow=LAST)
  10. w.create_line(160, 240, 160, 0, fill="red", arrow=LAST)
  11. # 标题文字
  12. w.create_text(w0+50,10,text='y=sin(x)')
  13. # x轴刻度
  14. for i in range(-3,4):
  15. j=i*40
  16. w.create_line(j+w0, h0, j+w0, h0-5, fill="red")
  17. w.create_text(j+w0,h0+5,text=str(i))
  18. # y轴刻度
  19. for i in range(-2,3):
  20. j=i*40
  21. w.create_line(w0, j+h0, w0+5, j+h0, fill="red")
  22. w.create_text(w0-10,j+h0,text=str(-i))
  23. # 计算x
  24. def x(t):
  25. x = t*40 # x轴放大40
  26. x+=w0 # 平移x轴
  27. return x
  28. # 计算y
  29. def y(t):
  30. y = math.sin(t)*40 # y轴放大40
  31. y-=h0 # 平移y轴
  32. y = -y # y轴值反向
  33. return y
  34. # 连续绘制微直线
  35. t = -math.pi
  36. while(t<math.pi):
  37. w.create_line(x(t), y(t), x(t+0.01), y(t+0.01),fill="blue")
  38. t+=0.01
  39. root.mainloop()

 

 例如:设置坐标原点(x0, y0)为画布的中心(x0, y0分别为画布宽、高的一半),以红色虚线绘制坐标轴,并按以下公式绘制函数曲线: x=(w0 /32)×(cost-tsint) y=(h0 /32)×(sint+tcost) 式中,w0是画布宽的一半,h0是画布高的一半。t的取值范围为0~25,步长为0.01。

  1. from tkinter import *
  2. import math
  3. root = Tk()
  4. w = Canvas(root, width=600, height=600)
  5. w.pack()
  6. # 画红色的坐标轴线(虚线)
  7. w.create_line(0, 300, 600, 300, fill="red", dash=(4, 4))
  8. w.create_line(300, 0, 300, 600, fill="red", dash=(4, 4))
  9. w0=300
  10. h0=300
  11. def x(t):
  12. x = (w0 / 32) * (math.cos(t) - t*math.sin(t))
  13. x+=w0 #平移x轴
  14. return x
  15. def y(t):
  16. y = (h0 / 32) * (math.sin(t) +t* math.cos(t))
  17. y-=h0 #平移y轴
  18. y = -y #y轴值反向
  19. return y
  20. t = 0.0
  21. while(t<25):
  22. w.create_line(x(t), y(t), x(t+0.01), y(t+0.01),fill="blue")
  23. t+=0.01
  24. root.mainloop()

 

二、  turtle库的图形绘制方法

turtle也是内置库Python图形绘制库,其绘制方法更为简单,原理如同控制一只“小龟”以不同的方向和速度进行位移而得到其运动轨迹

1、turtle绘图的基本方法

1.坐标位置和方向 setup()方法用于初始化画布窗口大小和位置,参数包括画布窗口宽、画布窗口高、窗口在屏幕的水平起始位置和窗口在屏幕的垂直起始位置

用turtle创建的画布与Canvas不同,其原点(0,0)在画布的中心,坐标方向与数学定义一致,向右、向上为正。

2.画笔 方法color()用于设置或返回画笔颜色

方法pensize()或width()用于设置笔触粗细

3.画笔控制和运动 方法penup()、pu()或up()为抬笔,当笔触移动时不留墨迹;方法pendown(),pd()或down()为落笔,当笔触移动时会留下墨迹。

画笔的移动方法有:向箭头所指方向前进forward()、fd();逆箭头所指方向后退backward(),bk()或back()。

画笔的原地转角方法有:箭头方向左转left()或lt();箭头方向右转right()或rt()。

位移至某点的方法:goto(),setpos()或setposition();画圆的方法:circle();返回原点的方法:home()。 位移速度方法speed(),其取值范围从慢到快为1~10。注意:取0为最快(无移动过程,直接显示目标结果)。 绘图完毕通常用方法done()结束进程。

4.文字 输出文字标签用write()方法,默认参数为输出文本,可选参数有:对齐方式align(left,center,right),font元组型字体设置(字体、字号、字形)。

2、介绍

从原点出发至坐标点(-100,100),改为红色,沿光标指向(默认方向为水平向右)前进200像素,改为蓝色,后退100像素,以动画模式输出文字(黑体,36磅,斜体) 

  1. from turtle import *
  2. setup(640,480,300,300)
  3. reset()
  4. pensize(5)
  5. goto(-100,100)
  6. color('red')
  7. fd(200)
  8. color('blue')
  9. bk(100)
  10. write('turtle绘图',move=True,font=('黑体',36,'italic'))
  11. done()

 3、简单形状图形

用循环结构可自动重复绘制步骤得出规则图形。 以5像素笔触重复执行“前进100像素,右转60度”的操作共6次,绘制红色正六边形;再用circle()方法画半径为60像素的红色圆内接正六边形;然后抬笔移动至(-50,200)点落笔,重复执行“右转144度,前进400像素”的操作共5次,绘制五角星。

  1. from turtle import *
  2. reset()
  3. pensize(5)
  4. #画正六边形,每步右转60
  5. for i in range(6):
  6. fd(100)
  7. right(60)
  8. #用circle方法画正六边形(半径为60的圆内接正六边形)
  9. color('red')
  10. circle(60,steps=6)
  11. #抬笔移动位置
  12. up()
  13. goto(-50,200)
  14. down()
  15. #画五角星,每步右转144
  16. for i in range(5):
  17. right(144)
  18. fd(400)
  19. done()

 螺纹形状绘制

  1. import turtle as tt
  2. tt.speed(50)
  3. tt.pencolor('blue')
  4. for i in range(100):
  5. tt.circle(2*i)
  6. tt.right(4.5)

 绘制小猪佩奇

  1. import turtle
  2. t = turtle.Turtle()
  3. t.pensize(4) #设置画笔粗
  4. t.color("pink")
  5. turtle.setup(400,400) #设置主窗口的大小
  6. t.speed(20) #设置画笔速度
  7. #画鼻子
  8. t.pu() #提笔
  9. t.goto(-100,0) #画笔移至坐标(-100,100)
  10. t.pd() # 落笔
  11. t.seth(-30) #沿角度-30°
  12. lengh=0.4
  13. for i in range(120):
  14. if 0<=i<30 or 60<=i<90:
  15. lengh=lengh+0.08
  16. t.lt(3) #向左转3
  17. t.fd(lengh) #向前移动lengh
  18. else:
  19. lengh=lengh-0.08
  20. t.lt(3)
  21. t.fd(lengh)
  22. t.pu() # 提笔
  23. t.seth(90) #沿角度90
  24. t.fd(25) # 向前移动25
  25. t.seth(0) #沿角度0
  26. t.fd(10)
  27. t.pd()
  28. t.pencolor("pink")
  29. t.seth(10)
  30. t.circle(5) # 画一个半径为5的圆
  31. t.pu()
  32. t.seth(0)
  33. t.fd(20)
  34. t.pd()
  35. t.pencolor("pink")
  36. t.seth(10)
  37. t.circle(5)
  38. #画头
  39. t.color("pink")
  40. t.pu()
  41. t.seth(90)
  42. t.fd(41)
  43. t.seth(0)
  44. t.pd()
  45. t.seth(180)
  46. t.circle(300,-30) #画一个半径为300,圆心角为-30°的弧
  47. t.circle(100,-60)
  48. t.circle(80,-100)
  49. t.circle(150,-20)
  50. t.circle(60,-95)
  51. t.seth(161)
  52. t.circle(-300,15)
  53. t.pu()
  54. t.goto(-80,70)
  55. #画耳朵
  56. t.color("pink")
  57. t.pu()
  58. t.seth(90)
  59. t.fd(-7)
  60. t.seth(0)
  61. t.fd(70)
  62. t.pd()
  63. t.seth(100)
  64. t.circle(-50,50)
  65. t.circle(-10,120)
  66. t.circle(-50,54)
  67. t.pu()
  68. t.seth(90)
  69. t.fd(-12)
  70. t.seth(0)
  71. t.fd(30)
  72. t.pd()
  73. t.seth(100)
  74. t.circle(-50,50)
  75. t.circle(-10,120)
  76. t.circle(-50,56)
  77. #画眼睛
  78. t.color("pink")
  79. t.pu()
  80. t.seth(90)
  81. t.fd(-20)
  82. t.seth(0)
  83. t.fd(-95)
  84. t.pd()
  85. t.circle(15)
  86. t.color("black")
  87. t.pu()
  88. t.seth(90)
  89. t.fd(12)
  90. t.seth(0)
  91. t.fd(-3)
  92. t.pd()
  93. t.circle(3)
  94. t.color("pink")
  95. t.pu()
  96. t.seth(90)
  97. t.fd(-25)
  98. t.seth(0)
  99. t.fd(40)
  100. t.pd()
  101. t.circle(15)
  102. t.color("black")
  103. t.pu()
  104. t.seth(90)
  105. t.fd(12)
  106. t.seth(0)
  107. t.fd(-3)
  108. t.pd()
  109. t.begin_fill()
  110. t.circle(3)
  111. t.end_fill()
  112. #画腮红
  113. t.color("pink")
  114. t.pu()
  115. t.seth(90)
  116. t.fd(-95)
  117. t.seth(0)
  118. t.fd(65)
  119. t.pd()
  120. t.begin_fill()
  121. t.circle(30)
  122. t.end_fill()
  123. #画嘴
  124. t.color("pink")
  125. t.pu()
  126. t.seth(90)
  127. t.fd(15)
  128. t.seth(0)
  129. t.fd(-100)
  130. t.pd()
  131. t.ht() #不显示箭头
  132. t.seth(-80)
  133. t.circle(30,40)
  134. t.circle(40,80)

 4、函数图形

用turtle库也可以完成较为复杂的函数二维图形。其方法是:抬笔至图形起点,根据起点、终点、步长及画布的半宽、半高,利用循环逐点计算(x,y)的坐标并移动笔触至该点,最终得到函数图形。 【例9-12】 创建800×800的turtle画布,以画布中心为原点画出坐标轴,并按以下公式绘制函数曲线: x=(w0/4)×(-2sint+sin2t) y=(h0/4)×(2cost-cos2t) 式中,w0是画布宽的一半,h0是画布高的一半。t的取值范围为0~2,步长为0.01。

  1. import math
  2. import turtle
  3. # 自定义从 (x1, y1) 到 (x2, y2)的画直线函数
  4. def drawLine (ttl, x1, y1, x2, y2):
  5. ttl.penup()
  6. ttl.goto (x1, y1)
  7. ttl.pendown()
  8. ttl.goto (x2, y2)
  9. ttl.penup()
  10. #逐点计算函数坐标,并按此移动
  11. def drawFunc (ttl, begin, end, step, w0, h0):
  12. t=begin
  13. while t < end:
  14. if t>begin:
  15. ttl.pendown()
  16. x = (w0/4)*(-2*math.sin(t)+math.sin(2*t))
  17. y = (h0/4)*(2*math.cos(t)-math.cos(2*t))
  18. ttl.goto (x, y)
  19. t += step
  20. ttl.penup()
  21. def main():
  22. # 设置画布窗口大小
  23. turtle.setup (800, 800, 0, 0)
  24. # 创建turtle对象
  25. ttl = turtle.Turtle()
  26. # 画坐标轴
  27. drawLine (ttl, -400, 0, 400, 0)
  28. drawLine (ttl, 0, 400, 0, -400)
  29. # 画函数曲线
  30. ttl.pencolor ('red')
  31. ttl.pensize(5)
  32. drawFunc (ttl, 0, 2*math.pi, 0.01,400,400)
  33. #对象,起点,终点,步长,半宽,半高
  34. # 绘图完毕
  35. turtle.done()
  36. if __name__ == "__main__":
  37. main()

 读取“ecgdata.txt”的心电图数据,绘制心电图。

  1. import turtle
  2. turtle.setup(500,600) #设置主窗口的大小
  3. turtle.speed(20) #设置画笔速度
  4. turtle.pu() #提笔
  5. x=-300
  6. turtle.goto(x,0) #画笔移至坐标
  7. turtle.pd() # 落笔
  8. ecg=list(open('ecgdata.txt','r'))
  9. t=0
  10. while t<len(ecg)-1:
  11. turtle.goto(t-300,int(ecg[t]))
  12. t+=1

三、 matplotlib库的图形绘制方法

matplotlib库是用于科学计算数据可视化的常见Python第三方模块。它借鉴了许多Matlab中的函数,可以轻松绘制高质量的线条图、直方图、饼图、散点图及误差线图等二维图形,也可以绘制三维图像,还可以方便地设定图形线条的类型、颜色、粗细及字体的大小等属性。

1、环境安装和基本方法

使用matplotlib库绘图,需要先安装导入numpy科学计算模块库。

如果不想经历烦琐的下载安装过程,也可使用Anaconda等集成安装方式来搭建科学计算环境。

通常,二维图形的绘制是导入matplotlib的pyplot子库所包含的plot函数来完成的。

首先,用导入pyplot子库语句:

import matplotlib.pyplot as plt 然后用 plt.figure(figsize=(w, h),dpi=x) 创建一个绘图对象,并设置对象的宽度比例w和高度比例h。

例如: plt.figure(figsize=(4,3), dpi=200) 为创建一个4:3的每英寸200点分辨率的绘图对象,调用plt.plot()方法在绘图对象中进行绘图。 pyplot()方法也可通过调用subplot()方法增加子图。subplot()方法通常包含三个参数:共有几行、几列、本子图是第几个子图。例如,p1 = plt.subplot(211)或p1 = plt.subplot(2,1,1)表示创建一个2行1列的子图,p1为第一个子图。

plot()方法的参数通常包括x、y轴两个变量及图形的颜色、线型、数据点标记等。

常见的颜色字符有:'r'(红色,red)、'g'(绿色,green)、'b'(蓝色,blue)、'c'(青色,cyan)、'm'(品红,magenta)、'y'(黄色,yellow)、'k'(黑色,black)、'w'(白色,white)等。

常见的线型字符有:'-'(直线)、'--'(虚线)、':'(点线)、'-.'(点画线)等。

常用的描点标记有:'.'(点)、'o'(圆圈)、's'(方块)、'^'(三角形)、'x'(叉)、'*'(五角星)、'+'(加号)等。

例如: plt.plot(x, y, '--*r')

表示以x和y两个变量绘制红色(r)虚线(--),以星号(*)作为描点标记。

在同一绘图对象中可用plot()方法同时绘制多个图形,例如: plt.plot(x, w, 'b',x, y, '--*r', x, z, '-.+g') 表示在同一绘图对象中同时呈现x-w、x-y和x-z三组变量的图形,并且分别以蓝色实线无描点、红色虚线星描点、绿色点画线加号描点表示。

matplotlib默认设置中没有对中文的支持,如果需要使用中文文本标注,应在matplotlib的字体管理器font_manager中专门设置。

例如,将个性化字体对象myfont设为华文宋体:

myfont = matplotlib.font_manager.FontProperties (fname =         'C:/Windows/Fonts/STSONG.TTF')    

并在输出文字时,使用该字体属性参数:fontproperties=myfont。 由于字体的变化,有时输出负号会受影响(显示不出负号,本例并不涉及),可预设matplotlib.rcParams['axes.unicode_minus'] = False解决

2、在同一绘图对象中,利用不同颜色和标注绘制折线图形

  1. import numpy as np
  2. import matplotlib
  3. import matplotlib.pyplot as plt
  4. myfont = matplotlib.font_manager.FontProperties(fname='C:/Windows/Fonts/STSONG.TTF')
  5. matplotlib.rcParams['axes.unicode_minus'] = False
  6. x = [0, 1, 2, 4, 5, 6]
  7. w = [3, 2, 5, 2, 3, 2]
  8. y = [1, 2, 3, 2, 4, 1]
  9. z = [1, 2, 3, 4, 5, 6]
  10. plt.plot(x, w, 'b',x, y, '--*r', x, z, '-.+g')
  11. plt.xlabel("x轴",fontproperties=myfont)
  12. plt.ylabel("w、y、z轴",fontproperties=myfont)
  13. plt.title("折线图",fontsize=20,fontproperties=myfont)
  14. plt.show()

 3、二维函数图形绘制

二维函数图形的绘制可调用numpy.linspace()方法,先生成数据系列,再用plot()方法绘图。通式为: numpy.linspace(start, stop, num=50, endpoint=True, retstep=False) 其中,参数依次为自变量起点、终点、生成数据点数、是否包括终点、是否返回间隔。  在同一绘图对象中,分别以红色实线和蓝色点状线绘出x在-1.7~1.7之间变化时的函数图形(100个采样点),并标注其图例和对应公式: y=3x3−3x2+4sin(x) y=−3x3−3x2+4sin(x)。

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. x = np.linspace(-1.7, 1.7, 100)
  4. plt.plot(x, 3*x**3-3*x**2+4*np.sin(x),"r",label="$y=3x^{3}-3x^{2}+4sin(x)$")
  5. plt.plot(x, -3*x**3-3*x**2+4*np.sin(x),"b.",label="$y=-3x^{3}-3x^{2}+4sin(x)$")
  6. plt.legend()
  7. plt.show()

 4、按以下公式绘制函数图形

: x=−2sin2t+sint y=−2cos2t+cost 其中,t的取值范围为0~2p,步长为0.02。

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. t=np.arange(0,2*np.pi,0.02)
  4. plt.plot(-2*np.sin(2*t)+np.sin(t),-2*np.cos(2*t)+np.cos(t))
  5. plt.show()

 5、用极坐标方式呈现如下公式的红色心状图形:

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. t=np.arange(0,2*np.pi,0.02)
  4. plt.subplot(111,polar=True)
  5. w=np.sin(t)*(np.abs(np.cos(t)))**(1/2)/(np.sin(t)+7/5)-2*np.sin(t)+2
  6. plt.plot(t,w,'r')
  7. plt.show()

 

 6、创建9:6的200dpi绘图对象

并且在上、下两个子图中分别用蓝色点状线和红色实线呈现x在0.5~2.5范围内变化的函数图形,分别标注坐标轴标签、图例和相应的公式。

  1. #coding=gbk
  2. import numpy as np
  3. import matplotlib.pyplot as plt
  4. from pylab import *
  5. myfont = matplotlib.font_manager.FontProperties(fname='C:/Windows/Fonts/STSONG.TTF')
  6. matplotlib.rcParams['axes.unicode_minus'] = False
  7.  
  8. def f1(x):
  9. return np.exp(-x)*np.cos(2*np.pi*x)
  10.  
  11. def f2(x):
  12. return np.sin(2*np.pi*x)*np.cos(3*np.pi*x)
  13.  
  14. x = np.arange(0.5,2.5,0.02)
  15.  
  16. plt.figure(figsize=(9,6),dpi=200)
  17. p1 = plt.subplot(211)
  18. p2 = plt.subplot(212)
  19.  
  20. p1.plot(x,f1(x),"b.",label="$y=e^{-x} \cdot \cos (2 \pi x)$")
  21. p2.plot(x,f2(x),"r-",label="$y=\sin (2 \pi x) \cos (3 \pi x)$",linewidth=2)
  22.  
  23. p1.axis([0.5,2.5,-1.0,1.5])
  24.  
  25. p1.set_ylabel("y",fontsize=12)
  26. #p1.set_title('Example Figures',fontsize=20)
  27. p1.set_title('函数曲线',fontsize=20,fontproperties=myfont)
  28. p1.grid(True)
  29. p1.legend()
  30.  
  31. p2.axis([0.5,2.5,-1.0,1.5])
  32. p2.set_ylabel("y",fontsize=12)
  33. p2.set_xlabel("x",fontsize=12)
  34. p2.legend()
  35.  
  36. plt.show()

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/一键难忘520/article/detail/874210
推荐阅读
相关标签
  

闽ICP备14008679号