不能直接写出函数的表达式 怎么在python里画函数图象呢?不写出y=f(x)这样python画四元函数的表达式python画四元函数,由隐函数的等式直接绘制图像,以x2+y2+xy=1的图像为例,使用sympy间接调用matplotlib工具的代码和该二次曲线图像如下(注意python里的乘幂符号是**而不是^,还有,python的sympy工具箱的等式不是a==b , 而是a-b或者Eq(a,b),这几点和matlab的区别很大)
直接在命令提示行的里面运行代码的效果
from sympy import *;
x,y=symbols('x y');
plotting.plot_implicit(x**2+y**2+x*y-1);
如何做四元函数图象做四元函数图象技巧
1、四元数的表示,其中q0为实部 , 而虚部q1,q2,q3正好组成了3D复平面中的向量 。简写就是q = q0 + qv , 其中qv是向量q1, q2 ,q3 。超复数的运算法则与复数相同,这里就不再重复了,但要特别说明四元数的倒数q-1 。
2、对于一个3D向量x, y, z,我们把他表现为四元数形式,则是:vq= 0, x, y, z 。以及给定一个表示旋转轴和旋转角度的单位四元数q , 那么向量vq绕指定轴旋转指定角度的结果四元数vq 。
概念分析
其中 , 对于那个用于存储旋转轴和旋转角度的单位四元数q,他与旋转轴v = x0, y0, z0和角度theta 。
q = q0 + q1*i + q2*j + q3*k , 上面就是四元数的表示,其中q0为实部,而虚部q1,q2,q3正好组成了3D复平面中的向量 。简写就是q = q0 + qv,其中qv是向量q1, q2 ,q3 。超复数的运算法则与复数相同 , 这里就不再重复了,但要特别说明四元数的倒数q-1 。
python 用eval(input)画这样四个圆 提示用户输入半径python有两种编程方式,交互式和文件式 。
交互式python画四元函数:对每个输入语句即时运行结果------适合语法练习
文件式:批量执行一组语句并运行结果------编程的主要方式
实例1:圆面积的计算(根据半径r计算圆面积)
上图明显是交互式运行的结果 , 如果想编辑文件式运行,则先编辑一个calcircle.py文件,将上述代码写进去 。
然后输入代码 python calcircle.py,命令界面即可输出代码结果 。
下面python画四元函数我们试试绘制多个同心圆的代码:
1 import turtle 2 turtle.pensize(2) 3 turtle.circle(10) 4 turtle.circle(40) 5 turtle.circle(80) 6 turtle.circle(160) 7 turtle.done()
运行结果 , 如下图所示
下面我们稍微分析一下这段代码
import turtle#导入海龟库 turtle.pensize(2)#设置画笔的大小 turtle.circle(10)#画圆,半径为正(负) , 表示圆心在画笔的左边(右边)画圆 turtle.circle(40) turtle.circle(80) turtle.circle(160) turtle.done()#必须是乌龟图形程序中的最后一个语句
关于turtle库的使用,之后还会提及 , turtle库是python的自带库,绘制图像相对来说比较方便 , 容易理解
当然上述的代码也可以这样写
1 from turtle import * 2 pensize(2) 3 circle(10) 4 circle(40) 5 circle(80) 6 circle(160) 7 done()
【python画四元函数的简单介绍】大家很容易发现他们的不同,就是第一句的区别 , 关于import的用法也将在后续章节详细讲述 。
下面我们来画一个难一点的图形
from turtle import * color('red','black')#前一个颜色是线条色,后一个是填充色 begin_fill()#从这里开始填充 for i in range(5):#画五笔就可以结束 fd(200) rt(144)#向右旋转144度 end_fill()#结束填充 done()
下面我们从一个简单的小程序来分析python的语法体系
我们大家都知道,华氏温度和摄氏温度之间的转换,我们可以用python编程实现
TempStr = input("请输入带有符号的温度值: ")#input显示的内容出现在屏幕上,且返回一个str类型的字符串 if TempStr[-1] in ['F', 'f']:#如果最后一个字符是F C = (eval(TempStr[0:-1]) - 32)/1.8#eval将字符串转换成数字 print("转换后的温度是{:.2f}C".format(C))#格式化输出 elif TempStr[-1] in ['C', 'c']: F = 1.8*eval(TempStr[0:-1]) + 32 print("转换后的温度是{:.2f}F".format(F)) else: print("输入格式错误")
推荐阅读
- 虎牙如何成为端游直播,虎牙要怎么样才能直播
- 红利电商如何生存,电商小卖家如何生存
- 游戏发展国开发新游戏,游戏发展国开发主机攻略
- 华为鸿蒙支持哪些app,鸿蒙 支持的软件
- go语言学习之二维数组 二维数组语句
- 下雨的html代码,html下雪代码
- 4399的飞行游戏,飞行 游戏
- canvas游戏开发思维,canvas做游戏
- 堆排序代码java 堆排序java实现