网站首页 > 文章中心 > 其它

python基本函数画图

作者:小编 更新时间:2023-09-11 08:07:38 浏览量:76人看过

python绘制函数图像

raw_input获取的输入是字符串,不能直接用np.array,需要用split进行切分,然后强制转化成数值类型,才能用plot函数

python基本函数画图-图1

我把你的代码稍微修改了一下,可能不太漂亮,不过能运行了

a = raw_input('function')

a = a.split(' ')#依空格对字符串a进行切分,如果是用逗号分隔,则改成a.split(',')

b = []

for i in range(len(a)):#把切分好的字符强制转化成int类型,如果是小数,将int改为float

b.append(int(a[i]))

plt.plot(x, b, label='x', color="green", linewidth=1)

python绘图篇

①.,xlable,ylable设置x,y轴的标题文字.

plt.show()显示绘图窗口,通常情况下,show()会阻碍程序运行,带-wthread等参数的环境下,窗口不会关闭.

plt.saveFig()保存图像.

面向对象绘图

①.,当前图表和子图可以用gcf(),gca()获得.

python基本函数画图-图2

subplot()绘制包含多个图表的子图.

configure subplots,可调节子图与图表边框距离.

可以通过修改配置文件更改对象属性.

图标显示中文

①.,在程序中直接指定字体.

Artist对象

①.,图标的绘制领域.

FigureCanvas和Render处理底层图像操作,Artist处理高层结构.

直接创建Artist对象进项绘图操作步奏:

①.,创建Figure对象(通过figure()函数,会进行许多初始化操作,不建议直接创建.)

Figure容器

如何找到指定的Artist对象.

①.,可调用add_subplot()和add_axes()方法向图表添加子图.

Axes容器

①.,patch修改背景.

①.,可对曲线进行插值.

①.,绘制直方图的函数是

数、中位数、第三四分位数与最大值来描述数据的一种方法,它可以粗略地看出数据是否具有对称性以及分

布的分散程度等信息,特别可以用于对几个样本的比较.

值的大小.

低层绘图函数

python基本函数画图-图3

类似于barplot(),dotchart()和plot()这样的函数采用低层的绘图函数来画线和点,来表达它们在页面上放置的位置以及其他各种特征.

在这一节中,我们会描述一些低层的绘图函数,用户也可以调用这些函数用于绘图.首先我们先讲一下R怎么描述一个页面;然后我们讲怎么在页面上添加点,线和文字;最后讲一下怎么修改一些基本的图形.

绘图区域与边界

添加对象

在绘制的图像上还可以继续添加若干对象,下面是几个有用的函数,以及对其功能的说明.

points(x, y, ...),添加点

lines(x, y, ...),添加线段

text(x, y, labels, ...),添加文字

abline(a, b, ...),添加直线y=a+bx

abline(h=y, ...),添加水平线

abline(v=x, ...),添加垂直线

polygon(x, y, ...),添加一个闭合的多边形

segments(x0, y0, x1, y1, ...),画线段

arrows(x0, y0, x1, y1, ...),画箭头

symbols(x, y, ...),添加各种符号

legend(x, y, legend, ...),添加图列说明

Python实操:手把手教你用Matplotlib把数据画出来

如需转载请联系华章 科技

如果已安装Anaconda Python版本,就已经安装好了可以使用的 Matplotlib.否则,可能要访问官网并从中获取安装说明:

正如使用np作为 NumPy 的缩写,我们将使用一些标准的缩写来表示 Matplotlib 的引入:

在本书中,plt接口会被频繁使用.

让我们创建第一个绘图.

假设想要画出正弦函数sin(x)的线性图.得到函数在x坐标轴上0≤x<10内所有点的值.我们将使用 NumPy 中的 linspace 函数来在x坐标轴上创建一个从0到10的线性空间,以及100个采样点:

可以使用 NumPy 中的sin函数得到所有x点的值,并通过调用plt中的plot函数把结果画出来:

你亲自尝试了吗?发生了什么吗?有没有什么东西出现?

实际情况是,取决于你在哪里运行脚本,可能无法看到任何东西.有下面几种可能性:

① 从.py脚本中绘图

如果从一个脚本中运行 Matplotlib,需要加上下面的这行调用:

在脚本末尾调用这个函数,你的绘图就会出现!

这实际上是交互式地执行Matplotlib最方便的方式.为了让绘图出现,需要在启动 IPython 后使用所谓的%matplotlib魔法命令.

此时此刻呢,无须每次调用plt.show()函数,所有的绘图将会自动出现.

如果你是从基于浏览器的 Jupyter Notebook 中看这段代码,需要使用同样的%matplotlib魔法命令.然而,也可以直接在notebook中嵌入图形,这会有两种输出选项:

在本书中,将会使用inline选项:

现在再次尝试一下:

上面的命令会得到下面的绘图输出结果:

如果想要把绘图保存下来留作以后使用,可以直接在 IPython 或者 Jupyter Notebook 使用下面的命令保存:

仅需要确保你使用了支持的文件后缀,比如.jpg、.png、.tif、.svg、.eps或者.pdf.

作为本章最后一个测试,让我们对外部数据集进行可视化,比如scikit-learn中的数字数据集.

为此,需要三个可视化工具:

那么开始引入这些包吧:

第一步是载入实际数据:

如果没记错的话,digits应该有两个不同的数据域:data域包含了真正的图像数据,target域包含了图像的标签.相对于相信我们的记忆,我们还是应该对digits稍加 探索 .输入它的名字,添加一个点号,然后按Tab键:digits.TAB,这个操作将向我们展示digits也包含了一些其他的域,比如一个名为images的域.images和data这两个域,似乎简单从形状上就可以区分.

所以呢,如果想要绘制出一副单独的图像,使用images将更加合适.首先,使用NumPy的数组切片从数据集中获取一幅图像:

上面的命令得到下面的输出:

此外,这里也使用cmap参数指定了一个颜色映射.默认情况下,Matplotlib 使用MATLAB默认的颜色映射jet.然而,在灰度图像的情况下,gray颜色映射更有效.

最后,可以使用plt的subplot函数绘制全部数字的样例.subplot函数与MATLAB中的函数一样,需要指定行数、列数以及当前的子绘图索引(从1开始计算).我们将使用for 循环在数据集中迭代出前十张图像,每张图像都分配到一个单独的子绘图中.

这会得到下面的输出结果:

本文摘编自<<机器学习:使用OpenCV和Python进行智能图像处理>>,经出版方授权发布.

python函数图的绘制

pre

import numpy as np

import matplotlib.pyplot as plt

from matplotlib.patches import Polygon

def func(x):

x=np.linspace(0,10)

y=func(x)

fig,ax = plt.subplots()

ax.set_xticks([a,b])

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

ax.set_yticks([])

ix=np.linspace(a,b)

iy=func(ix)

ixy=zip(ix,iy)

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

ax.add_patch(poly)

plt.show()

/pre

以上就是土嘎嘎小编为大家整理的python基本函数画图相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章