使用python绘制任意函数图像
##原创文章不易,望点赞转发收藏三连

效果展示

y = (sinx)/x

y = x4+x3+x^2+1

y=-x^2

文末还会展示一些实例图片

引入需要的库

我们使用如下库

import turtle as t
import math

这两个库的用法也是本项目的核心
其中基本语法不再赘述
大家可以网络搜索

核心算法

我们假设像素点为坐标点,通过goto(x,y)与y,x的函数关系进行找点
通过penup().pendown()连接个点,视觉上像素点的连线几乎为曲线
当然,可以通过仅仅画点保证准确度

绘画坐标系

坐标系的绘制不是难事,就是麻烦,我已经经过尝试,给出以下数据,方便大家使用

t.screensize(800,800,"white")
t.hideturtle()
t.speed(0)
t.pendown()
t.goto(0,0)
t.forward(800)
t.left(90)
t.goto(0,0)
t.forward(800)
t.left(90)
t.goto(0,0)
t.forward(800)
t.left(90)
t.goto(0,0)
t.forward(800)
t.left(90)
t.penup()
t.goto(-10,-15)
t.write("O")
t.goto(350,-15)
t.write("x")
t.goto(-15,337)
t.write("y")

基本设置

我们再画图像之前要初始化x的位置,避免画到画布外,否则会报错
之后处理y时,也要注意这一点
另外,可以设置曲线粗细和绘画速度
粗细1–>n变粗
速度1–>10->0变快

n = int(input(r"输入需要放大的倍数:"))
x = int((-350)/n)
t.pensize(1)
t.speed(10)
while pass:pass

处理函数关系

首先两个确定:
1.确定函数解析式,要符合python语法
2.确定定义域的补集合
然后避免两点:
1.避免x的取值超出定义域,出现MATHS ERROR
2.避免y超出范围,导致ERROE
再注意两个近似:
1.可以每个点向前画一个坐标,近似于点
2.pendown()下的goto()连接点,近似于曲线
还有两个选择:
1.penup()的注释取消后,将t.penup()加入代码,可以之画点不连线
2.math库可以丰富函数类型

while x <= int((350)/n):if x!=0:                  #定义域的反域y = m.sin(x)/x        #函数解析式if y>=-350 and y<=350:t.goto(n*x,y*n)t.pendown()t.forward(1)#t.penup()x+=1

如果实在不清楚定义域或者表示起来不方便
也可以采用try-except结构自动处理

while pass:try:y = math.sin(x)/xexcept:#breakpass        ###根据需要选择,建议直接passpass

最后别忘了title库结尾的title.done()

展示源代码

import turtle as t
import math as m
t.screensize(800,800,"white")
t.hideturtle()
t.speed(0)
t.pendown()
t.goto(0,0)
t.forward(800)
t.left(90)
t.goto(0,0)
t.forward(800)
t.left(90)
t.goto(0,0)
t.forward(800)
t.left(90)
t.goto(0,0)
t.forward(800)
t.left(90)
t.penup()
t.goto(-10,-15)
t.write("O")
t.goto(350,-15)
t.write("x")
t.goto(-15,337)
t.write("y")n = int(input(r"输入需要放大的倍数:"))
x = int((-350)/n)
t.pensize(1)
t.speed(10)
while x <= int((350)/n):if x!=0:                  #定义域的反域y = m.sin(x)/x        #函数解析式if y>=-350 and y<=350:t.goto(n*x,y*n)t.pendown()t.forward(1)#t.penup()x+=1
t.down()

图片展示

双曲正弦

双曲余弦

双曲正切(原点附近)

正弦

余弦

使用python绘制任意函数图像相关推荐

  1. 用Python绘制数学函数图像

    博客文章: https://blog.manchan.top/post/Drawing-mathematical-function-images-with-Python/可在此处找到我 前言 最近开始 ...

  2. 项目二:绘制数学函数图像

    在Python中,绘制函数图像一般要用到Numpy和 Matplotlib两个模块,这两个模块需要另外安装. numpy模块: 是一个科学计算包,其中包括很多数学函数,如三角函数.矩阵计算方法.矢量运 ...

  3. python实现数学函数图像

    python实现数学函数图像 预备知识 使用python绘制基本初等函数 在数学里,基本初等函数包括幂函数.指数函数.对数函数.三角函数.反三角函数.常数函数.不同函数的定义: python标准库[注 ...

  4. 分享:python,限制任意函数,线程的执行时间或根据条件终止.

    python,限制任意函数,线程的执行时间或根据条件终止. http://my.oschina.net/u/1024140/blog/122778

  5. 使用 Python 绘制 Log 函数图

    使用 Python 绘制 Log 函数图 在数学和科学计算中,Log 函数是一个基本的函数之一.在数据分析.信号处理.机器学习等领域,Log 函数也有着广泛的应用.因此,在 Python 中绘制 Lo ...

  6. 如何用python画函数曲线_python 画函数曲线示例 用python 怎么画函数图像

    Python如何画函数的曲线 输入以下代码导入小编们用到的函数库. >>> import numpy as np >>> import matplotlib.pyp ...

  7. 基于 function-plot.js 开源库绘制数学函数图像实现兼文档翻译

    一.前言: 前段时间移动项目想实现一个能实时绘制数学函数图像的H5小应用, app 通过 webview 进行嵌入,目前网上提供了大致有两种方法: ①.Chart.js 结合 Plugins 绘制 = ...

  8. htm+JS实现绘制数学函数图像

    htm+JS实现绘制数学函数图像 其中常用的函数可参见,JS中常用的Math方法 https://blog.51cto.com/u_10725738/5253407 https://www.jb51. ...

  9. matplotlib绘制sin函数图像

    import matplotlib.pyplot as plt import numpy as np # 目标:绘制sin函数图像# 第一步:绘制x轴的刻度 x = np.linspace(0, np ...

最新文章

  1. github提交代码却没有显示绿格子
  2. R构建朴素贝叶斯分类器(Naive Bayes Classifier)
  3. python能在excel运行吗-用ExcelPython在Excel中调用Python
  4. Makefile:160: recipe for target 'all' failed (Ubuntu 16.06 + Opencv3.2)解决办法
  5. 中望cad2018中文版
  6. cron表达式详解 Elastic-Job名次解释
  7. node php聊天室,最简单的Nodejs聊天室示例
  8. c语言安卓贪吃蛇代码下载,C语言贪吃蛇代码
  9. K8S+KubeSphere之Helm安装
  10. android handler内存,Android handler之内存泄露原因揭示
  11. linux top 命令可视化_linux性能监控:CPU监控命令之top命令
  12. 手机连接ftp文件服务器,手机轻松玩转小白文件管理器远程FTP教程——x-plo
  13. vs2005安装和部署项目
  14. 深入WEP密码破解原理
  15. WebRTC 音视频同步分析
  16. vue 高德地图的使用
  17. GMap.net 地图展示以及地图标记
  18. C++ gcc编译器加速优化
  19. error: #268: declaration may not appear after executable statement in block
  20. esc键 qt 退出菜单_Qt中Esc键触发事件处理

热门文章

  1. iPhone和Android的区别,苹果手机用户和安卓用户使用的四大区别,你符合几个?...
  2. Python学习笔记(五)—— Slicing
  3. C++虚函数和纯虚函数理解
  4. 各路厂商花式入局,打开元宇宙的正确方式究竟是?
  5. HDU 1804 Deli Deli
  6. 总结二十二:如何在公司建立成功的技术文化(2)
  7. 各大厂商的免费 800电话号码 (经典没事拨来玩)
  8. windows服务器搭建原神私服教程(附客户端+服务端+环境配置)
  9. 每日新闻丨​云从科技联合华为发布全新智慧社区解决方案
  10. 涡轮流量计原理和选择方法