python图函数 python画函数曲线图

python函数图的绘制

pre

成都创新互联公司长期为超过千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为东阳企业提供专业的网站建设、做网站东阳网站改版等技术服务。拥有十年丰富建站经验和众多成功案例,为您定制开发。

import numpy as np

import matplotlib.pyplot as plt

from matplotlib.patches import Polygon

def func(x):

return -(x-2)*(x-8)+40

x=np.linspace(0,10)

y=func(x)

fig,ax = plt.subplots()

plt.plot(x,y,'r',linewidth=2)

plt.ylim(ymin=20)

a=2

b=9

ax.set_xticks([a,b])

ax.set_xticklabels(['$a$','$b$'])

ax.set_yticks([])

plt.figtext(0.9,0.05,'$x$')

plt.figtext(0.1,0.9,'$y$')

ix=np.linspace(a,b)

iy=func(ix)

ixy=zip(ix,iy)

verts=[(a,0)]+list(ixy)+[(b,0)]

poly = Polygon(verts,facecolor='0.9',edgecolor='0.5')

ax.add_patch(poly)

x_math=(a+b)*0.5

y_math=35

plt.text(x_math,y_math,r"$\int_a^b(-(x-2)*(x-8)+40)dx$",horizontalalignment='center',size=12)

plt.show()

/pre

python不用库def函数画各种图形

第一步,打开python语言命令窗口,声明一个函数print_color,调用range遍历,打印星号,如下图所示:

第二步,接着调用第一步中的函数,然后查看打印结果,可以发现生成一个三角形,如下图所示:

第三步,再次定义一个函数four_tu,利用循环生成星号,注意查看函数生成的图形。

第四步,调用上述步骤中定义的函数,然后查看打印图形组合的形状。

第五步,如果在定义的函数内,多次调用print()方法打印星号,会是什么样的结果呢。

第六步,在后续步骤中,调用函数打印结果,可以发现生成一个不规则的图形。

python之pyplot

1、 定义x和y,画图展示,保存图片

其中dpi参数指定图像的分辨率为120

2、 优化绘图线条风格

线条颜色color

线条标记marker

线条风格linestyle

3、 坐标轴的控制

坐标轴范围和标题

坐标图上标记

坐标间隔设定

函数plt.xticks()和plt.xticks()用来实现对x轴和y轴坐标间隔(也就是轴记号)的设定。用法上,函数的输入是两个列表,第一个表示取值,第二个表示标记。当然如果你的标记就是取值本身,则第二个列表可以忽略

多图与子图

figure() 函数可以帮助我们同时处理生成多个图,而subplot()函数则用来实现,在一个大图中,出现多个小的子图。需要注意的是, figure() 中的参数为图片序号,一般是按序增加的,这里面还涉及一个当前图的概念,其中 subplot() 的参数有3个,分别为行数、列数、以及子图序号。比如 subplot(1,2,1) 表示这是一个1行,2列布局的图(两个子图,在同一行,分居左右),其中,当前处理的子图是第一个图(也就是左图)。

这样,我们就用一个脚本画了两张图fig.1和fig.2。其中,fig.1包含了分居左右的两个子图,分别是y1和y3的曲线;fig.2是一张整图,画的是y2曲线。

如果想要某个子图占据整行或者整列,可以采用下面

第三个图,实际上相当于将前面的两个小的子图看作是一个整图

python有没有将图像变成函数的方法

当然有,这就是Python函数图像工具(EXE)。 本程序运用Python中最令人喜爱的数据处理工具numpy和超强的图像库matplotlib,实现13种不同类别函数的分类图像整理,展示图像均可以保存为图片的形式,具备拖动、放大等功能

用Python画图

今天开始琢磨用Python画图,没使用之前是一脸懵的,我使用的开发环境是Pycharm,这个输出的是一行行命令,这个图画在哪里呢?

搜索之后发现,它会弹出一个对话框,然后就开始画了,比如下图

第一个常用的库是Turtle,它是Python语言中一个很流行的绘制图像的函数库,这个词的意思就是乌龟,你可以想象下一个小乌龟在一个x和y轴的平面坐标系里,从原点开始根据指令控制,爬行出来就是绘制的图形了。

它最常用的指令就是旋转和移动,比如画个圆,就是绕着圆心移动;再比如上图这个怎么画呢,其实主要就两个命令:

turtle.forward(200)

turtle.left(170)

第一个命令是移动200个单位并画出来轨迹

第二个命令是画笔顺时针转170度,注意此时并没有移动,只是转角度

然后呢? 循环重复就画出来这个图了

好玩吧。

有需要仔细研究的可以看下这篇文章 ,这个牛人最后用这个库画个移动的钟表,太赞了。

Turtle虽好玩,但是我想要的是我给定数据,然后让它画图,这里就找到另一个常用的画图的库了。

Matplotlib是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地行制图。其中,matplotlib的pyplot模块一般是最常用的,可以方便用户快速绘制二维图表。

使用起来也挺简单,

首先import matplotlib.pyplot as plt 导入画图的图。

然后给定x和y,用这个命令plt.plot(x, y)就能画图了,接着用plt.show()就可以把图形展示出来。

接着就是各种完善,比如加标题,设定x轴和y轴标签,范围,颜色,网格等等,在 这篇文章里介绍的很详细。

现在互联网的好处就是你需要什么内容,基本上都能搜索出来,而且还是免费的。

我为什么要研究这个呢?当然是为了用,比如我把比特币的曲线自己画出来可好?

假设现在有个数据csv文件,一列是日期,另一列是比特币的价格,那用这个命令画下:

这两列数据读到pandas中,日期为df['time']列,比特币价格为df['ini'],那我只要使用如下命令

plt.plot(df['time'], df['ini'])

plt.show()

就能得到如下图:

自己画的是不是很香,哈哈!

然后呢,我在上篇文章 中介绍过求Ahr999指数,那可不可以也放到这张图中呢?不就是加一条命令嘛

plt.plot(df['time'], df['Ahr999'])

图形如下:

但是,Ahr999指数怎么就一条线不动啊, 原来两个Y轴不一致,显示出来太怪了,需要用多Y轴,问题来了。

继续谷歌一下,把第二个Y轴放右边就行了,不过呢得使用多图,重新绘制

fig = plt.figure() # 多图

ax1 = fig.add_subplot(111)

ax1.plot(df['time'], df['ini'], label="BTC price")  # 绘制第一个图比特币价格

ax1.set_ylabel('BTC price') # 加上标签

# 第二个直接对称就行了

ax2 = ax1.twinx()# 在右边增加一个Y轴

ax2.plot(df['time'], df['Ahr999'], 'r', label="ahr999")  # 绘制第二个图Ahr999指数,红色

ax2.set_ylim([0, 50])# 设定第二个Y轴范围

ax2.set_ylabel('ahr999')

plt.grid(color="k", linestyle=":")# 网格

fig.legend(loc="center")#图例

plt.show()

跑起来看看效果,虽然丑了点,但终于跑通了。

这样就可以把所有指数都绘制到一张图中,等等,三个甚至多个Y轴怎么加?这又是一个问题,留给爱思考爱学习的你。

有了自己的数据,建立自己的各个指数,然后再放到图形界面中,同时针对异常情况再自动进行提醒,比如要抄底了,要卖出了,用程序做出自己的晴雨表。

python两个函数图像怎么分开画而且加表格

一、函数说明

在使用python作图时,应用最广的就是matplotlib包,但我们平时使用matplotlib时主要是画一些简单的图表,很少有涉及分段函数。本次针对数值实验中两个较为复杂的函数,使用其构建分段函数图像。

二、图像代码

2.11、函数公式:

y=4sin(4πt)-sgn(t-0.3)-sgn(0.72-t)

2.12、代码如下:

import numpy as np

import matplotlib.pyplot as plt

def sgn(x):

if x0:

return 1

elif x0:

return -1

else:

return 0

t=np.arange(0,1,0.01)

y=[]

for i in t:

y_1=4*np.sin(4*np.pi*i)-sgn(i-0.3)-sgn(0.72-i)

y.append(y_1)

plt.plot(t,y)

plt.xlabel("t")

plt.ylabel("y")

plt.title("Heavsine")

plt.show()

2.13、运行结果如下:

81036331d721706ae12808beb99b9574.png

2.21、函数公式:

479029.html

2.22、代码如下:

import numpy as np

import matplotlib.pyplot as plt

def g(x):

if x0:

return x

else:

return 0

t=np.arange(0,1,0.01)

y=[]

for i in t:

y_1=g(i*(1-i))*np.sin((2*np.pi*1.05)/(i+0.05))

y.append(y_1)

plt.plot(t,y)

plt.xlabel("t")

plt.ylabel("y")

plt.title("TimeSine")

plt.show()


当前标题:python图函数 python画函数曲线图
标题网址:http://hbruida.cn/article/hpdhgh.html