网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

python绘制函数图象 用python画函数图像

用Python画图

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

10余年的定陶网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。网络营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整定陶建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联公司从事“定陶网站设计”,“定陶网站推广”以来,每个客户项目都认真落实执行。

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

第一个常用的库是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里画函数图象呢?

不写出y=f(x)这样的表达式,由隐函数的等式直接绘制图像,以x²+y²+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);

python函数图的绘制

pre

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两个函数图像怎么分开画而且加表格

一、函数说明

在使用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 matplotlib之函数图像绘制、线条rc参数设置

为避免中文显示出错,需导入matplotlib.pylab库

1.2.1 确定数据

1.2.2 创建画布

1.2.3 添加标题

1.2.4 添加x,y轴名称

1.2.5 添加x,y轴范围

1.2.6 添加x,y轴刻度

1.2.7 绘制曲线、图例, 并保存图片

保存图片时,dpi为清晰度,数值越高越清晰。请注意,函数结尾处,必须加plt.show(),不然图像不显示。

绘制流程与绘制不含子图的图像一致,只需注意一点:创建画布。

合理调整figsize、dpi,可避免出现第一幅图横轴名称与第二幅图标题相互遮盖的现象.

2.2.1 rc参数类型

2.2.2 方法1:使用rcParams设置

2.2.3 方法2:plot内设置

2.2.4 方法3:plot内简化设置

方法2中,线条形状,linestyle可简写为ls;线条宽度,linewidth可简写为lw;线条颜色,color可简写为c,等等。


分享题目:python绘制函数图象 用python画函数图像
文章路径:http://bjjierui.cn/article/hhpiec.html

其他资讯