如需转载请联系华章 科技
如果已安装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进行智能图像处理>>,经出版方授权发布.
导入需要的模块
import numpy as np
import scipy as sp
import pylab as pl
输入代码
pl.plot(x,pl.sin(x))
pl.show()
几点说明:
希望采纳!!
import numpy as np;
from matplotlib import pyplot as plt;
fig = plt.figure();
x=np.arange(0,100)/10;
y=np.sin(x);
plt.savefig('sine.png');
plt.show();
用python怎样画出如题所示的正余弦函数图像? 如此编写代码,使其中两个轴、图例、刻度,大小,LaTex公式等要素与原图一致,需要用到的代码如下,没有缩进:
from matplotlib import pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(a,b,label=r"$y=\sin(\theta)$")
ax.plot(a,c,label=r"$y=\cos(\theta)$")
ax.grid(True)
ax.set_ylabel(r"$y$")
ax.set_xlabel(r"$\theta$")
plt.title("Sine Cosine Waves")
plt.legend()
plt.savefig("SinCosWaveDegFont.jpg")
plt.show()
代码运行show的窗口图
代码的截图
代码输出的文件的图
没接触过这个模块.但是画曲线用过其他的供参考.
import?numpy?as?np
import?matplotlib.pyplot?as?plt
x?=?np.linspace(-10,?10,?10000)
a?=?np.sin(x)
b?=?np.cos(x)
c?=?np.tan(x)
d?=?np.log(x)
plt.plot(x,?a,?label="$sin(x)$",?color="green",?linewidth=1)
plt.plot(x,?b,?label="$cos(x)$",?color='blue',?linewidth=1)
plt.plot(x,?c,?"b--",?label="$tan(x)$",?color='red',?linewidth=1)
plt.plot(x,?d,?"b--",?label="$log(x)$",?color='grey',?linewidth=1)
plt.xlabel("Time(s)")
plt.ylabel("Volt")
plt.title("PyPlot")
plt.xlim(-10,?10)
以上就是土嘎嘎小编为大家整理的python绘制正弦函数相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!