当前位置: 首页 > news >正文

使用网站效果用c语言做网站

使用网站效果,用c语言做网站,产品设计公司运营,一个网站如何产生流量1 关于 Matplotlib 模块Matplotlib 是一个由 John Hunter 等开发的#xff0c;用以绘制二维图形的 Python 模块。它利用了 Python 下的数值计算模块 Numeric 及 Numarray#xff0c;克隆了许多 Matlab 中的函数#xff0c; 用以帮助用户轻松地获得高质量的二维图形。Matplot…1 关于 Matplotlib 模块Matplotlib 是一个由 John Hunter 等开发的用以绘制二维图形的 Python 模块。它利用了 Python 下的数值计算模块 Numeric 及 Numarray克隆了许多 Matlab 中的函数 用以帮助用户轻松地获得高质量的二维图形。Matplotlib 可以绘制多种形式的图形包括普通的线图直方图饼图散点图以及误差线图等可以比较方便的定制图形的各种属性比如图线的类型颜色粗细字体的大小等它能够很好地支持一部分 TeX 排版命令可以比较美观地显示图形中的数学公式。Matplotlib 掌握起来也很容易由于 Matplotlib 使用的大部分函数都与 Matlab 中对应的函数同名且各种参数的含义使用方法也一致这就使得熟悉 Matlab 的用户使用起来感到得心应手。对那些不熟悉的 Matlab 的用户而言这些函数的意义往往也是一目了然的因此只要花很少的时间就可以掌握。Matplotlib 目前包含了37个不同的模块, 如 matlab, mathtext, finance, dates等等其中与绘图关系最直接的是 matlab 模块。可以用下面的命令装载并查看它提供的函数 import matplotlib.matlab dir(matplotlib.matlab)如果要了解模块中某个函数的使用方法可以使用 help 命令。如下面的命令 help(legend) help(plot)会返回 legend 和 plot 这两个函数的信息。本文拟通过一些实例来说明 matplotlib 的这些主要特点。相信通过阅读这些例子您能对 Matplotlib 的使用有一个基本的了解。2 绘制一组幂函数先从一个简单的例子开始讨论。假设要在一个图形中显示一组幂函数。这组幂函数的基不同分别为10自然对数 e 和2。可以用如下 Python 脚本去描绘这组曲线生成的图形如图1所示。from matplotlib.matlab import *x linspace(-4, 4, 200)f1 power(10, x)f2 power(e, x)f3 power(2, x)plot(x, f1, r, x, f2, b, x, f3, g, linewidth2)axis([-4, 4, -0.5, 8])text(1, 7.5, r$10^x$, fontsize16)text(2.2, 7.5, r$e^x$, fontsize16)text(3.2, 7.5, r$2^x$, fonsize16)title(A simple example, fontsize16)savefig(power.png, dpi75)show()图1: 一组幂函数程序的第一行装载了 matlab 模块。接下来的几行语句(至 savefig 之前)好像是在运行 Matlab 程序因为 linspace power, plotaxis, text, title 这些函数在 Matlab 中也存在。这个例子展示了 Matplotlib 中几个比较常用的绘图函数如 plotaxistitle 等的用法。其中 plot 是一个功能十分强大的函数, 通过改变它的参数选项可以灵活地修改图形的各种属性比如选用的线型颜色宽度等。显示图形中的数学公式Matplotlib 可以支持一部分 TeX 的排版指令因此用户在绘制含有数学公式的图形时会感到很方便并且可以得到比较满意的显示效果所需要的仅仅是一些 TeX 的排版知识。下面的这个例子显示了如何在图形的不同位置上, 如坐标轴标签图形的标题以及图形中适当的位置处显示数学公式。相应的 Python 程序如下, 生成的图形见图2。from matplotlib.matlab import *def  f(x, c):m1 sin(2*pi*x)m2 exp(-c*x)return multiply(m1, m2)x linspace(0, 4, 100)sigma 0.5plot(x, f(x, sigma), r, linewidth2)xlabel(r$\rm{time}  \  t$, fontsize16)ylabel(r$\rm{Amplitude} \ f(x)$, fontsize16)title(r$f(x) \ \rm{is \ damping  \ with} \ x$, fontsize16)text(2.0, 0.5, r$f(x) \rm{sin}(2 \pi  x^2) e^{\sigma x}$, fontsize20)savefig(latex.png, dpi75)show()图2: 图形中数学公式的显示从程序中可以看出在 Matplotlib 中进行有关数学公式的排版是很简单的。与 TeX 排版时的约定一样要插入的公式部分由一对美元符号 $ 来进行标识而具体的排版命令与 TeX 一样。在任何可以显示文本的地方(如轴的标签标题处等)都可以插入需要的公式。需要注意的是数学公式所在的字符串开始之处有一个标记 r表示该字符串是一个 raw string。这是因为排版公式时字符串所包含的内容必须按照 TeX 的规范而不是其他的规范来进行解析。所以使用 raw string 可以避免其它规则解释字符串中某些特殊字符所带来的歧义。从生成的图形可以看到公式显示的效果是比较美观的。3 绘制其他格式的图形除了常用的线图Matplotlib 还可以绘制其他种类的图形如直方图饼图误差线图等等。下面是一个处理实验数据的例子。它用直方图的形式比较了实际测量电流和理论计算电流同时还显示了测量的误差分布情况。程序首先读取实验数据 current.dat获得数据后利用函数 bar 进行绘图。from matplotlib.matlab import *filename d:\\wei\\exp\\current.datX load(filename)dp X[:, 0]i_mea X[:, 1]i_mea_err X[:, 2]i_cal X[:, 3]i_cal_err X[:, 4]width 3h1 bar(dp, i_mea, width, colorr, yerri_mea_err)h2 bar(dpwidth, i_cal, width, colorb, yerri_cal_err)xlabel(Particle diameter (nm), fontsize16)xticks(dpwidth, dp)ylabel(Signal current (nA), fontsize16)title(Measured current vs. calculated current)legend((h1[0], h2[0]), (measured current, calculated current), loc2)savefig(current.png, dpi75)show()图3 :测量电流 vs. 计算电流从程序中可以看出函数 load 极大地方便了数据文件的读取工作(不需要自己写代码来处理数据文件了)它的输出直接被传递至函数 bar 中进而完成直方图和误差线图的绘制。4 GLP 集合计算结果的可视化Python 是一种比较适合用来进行科学计算的脚本语言如果利用了 Numeric 及 Numarray 模块它的计算能力还能得到进一步的增强。 Matplotlib 也充分利用了这两个模块可以高质量地完成计算结果可视化的工作。下面是一个计算和显示两维好格子点 GLP (Good Lattice Point Set)集合的例子。 GLP 集合是一种用算法产生的伪随机数的集合,它在一些优化计算中很有用详细的介绍可以在参考文献里找到。下面的 Python 程序先定义了一个函数 glp(n1, n2) 用以产生需要的 GLP 集合, 接着利用 Matplotlib 来显示它的分布情况(应该是均匀分布的)。# A two dimensional GLP set# with n1377, n2610from matplotlib.matlab import *def glp(n1, n2):q zeros((2, n2), Float)h1 1; h2 n1for i in arange(n2-1):q[0][ i] (fmod(h1*(i1), n2)-0.5)/n2q[1][ i] (fmod(h2*(i1), n2)-0.5)/n2q[0][n2-1] (n2-0.5)/n2q[1][n2-1] (n2-0.5)/n2return qn1 377; n2 610q glp(n1, n2)x q[0, :]y q[1, :]plot(x, y, r., linewidth2)axis([0, 1, 0, 1])title(r$\rm{GLP \ set \ with} \ n_1 377, \ n_2 610$)savefig(glp.png, dpi 75)show()图4: GLP 集合的分布最初我们是用 Matlab 来完成这个工作的现在用 Python 来实现一样很简洁。程序中函数 glp 的实现主要是利用了模快 Numeric计算得到的结果用 plot 函数直接加以显示十分方便。这个例子(包括上一个例子)显示了在利用 Python 进行某些科学及工程计算时Matplotlib 往往能简洁高效地完成计算结果可视化的工作。5 工作模式及图形的输出方式最后简单的介绍一下 Matplotlib 的工作模式以及输出图形的方式。Matplotlib 有两种工作模式交互模式 (interactive mode) 以及批处理模式 (batch mode)。很容易理解这两种模式的差别。第一种模式就是在某个 Python Shell 的提示符下逐个运行绘图的命令。第二种模式是先把绘图命令写成一个脚本文件然后在适当的环境中执行这个文件。 最终图形的输出也有两种方式即 GUI 输出方式和非 GUI 输出方式。简单地说GUI 方式的输出是把产生的图形直接显示在屏幕上而非 GUI 方式的输出则是把图形保存为某种格式的文件比如pspng格式的文件。不论哪一种方式都与系统使用的 backend 有关 (backend 可以理解为后端的绘图引擎)。与 GUI方式输出有关的 backend 包括 WxPython, TkAgg, Tkinter 等。而与非 GUI 方式有关的 backend 包括 GD, PSPaint 等。下图总结了目前 Matplotlib 支持的主要backend。图5: Matplotlib 支持的主要 backend用户可以根据自己的实际需要选用其中的某种输出方式当然也可以两种同时使用。以上的几个例子都是同时使用了这两种方式。以上几个 Python 脚本的最后一行命令 show 负责把图形在屏幕上显示出来而命令 savefig 会把图形保存为相应格式的文件目前缺省的输出格式是 png 格式。6 总结作为一个仍在进行中的项目Matplotlib 充分利用了 Python 下的 Numeric(Numarray) 模块提供了一种利用 Python 进行数据可视化的解决方案进一步加强了 Python 用来进行科学计算的能力。Matplotlib 简单易学它克隆了众多 Matlab 中的函数这会让了解 Matlab 的用户受益不少。其他的特点还包括能够绘制多种类型的图形可以简单灵活对图形的各种属性进行修改能比较美观地显示图形中的数学公式。与其他的一些绘图程序相比如 GnuplotMatplotlib 的一个吸引人之处就是输出图形的质量较高。不足之处是 Matplotlib 的功能目前还不是很完善, 比如目前还不能支持三维绘图对 TeX 排版的支持还不充分等等。不过考虑到它是一个还在进行中的项目这些就不应求全责备了。总的说来如果您需要一种可视化的工具并且希望它能有高质量的输出效果那么 Python 的 Matplotlib 模块应该是一个值得考虑的选择。
http://www.sadfv.cn/news/203242/

相关文章:

  • 网站建设到备案263邮箱登录入口官网
  • 北京网站优化常识承德 网站维护
  • 怎么进成品网站后台简述网络营销的定义
  • 曼朗策划网站建设怎么依赖网站开发app
  • 廊坊网站建设方案托管东莞网站建设技术支持
  • 什么软件做网站最好金华专业的网站建设
  • 做网站怎么切psd图麻将app软件开发
  • 东莞整站优化排名哪些网站做面试题
  • 专门做房产的网站wordpress中文版和英文版
  • 农安县住房和城乡建设厅网站网站建设规划书样板
  • 哈尔滨php网站开发公司仿西部数码网站
  • 杭州做企业网站的公司做爰小视频网站
  • 哈尔滨大型网站建设贴吧网站怎么做
  • 做一个免费网站的流程汽车网站建设参考文献开题报告
  • 做美工用的网站网站公共模板是什么意思
  • 深圳定制网站建设服务公司网站和app可以做充值余额功能
  • 去视频网站做编辑网站建设公司好做吗
  • 购物帮 做特惠的导购网站无锡网络营销推广软件
  • 珠海做网站制作关键词网站推广
  • 网站开发合同适用印花税wordpress自定义文章类型模板
  • 温州网站关键词推广做亚马逊网站一般发什么快递
  • 广安市国土资源局网站建设银行系统网站模板
  • 网站开发 之cookie一个企业做网站的意义
  • 青海建设工程信息网站网易企业邮箱登录入口网页版
  • 做seo营销网站wordpress jae
  • 济南网站建设 选聚搜网络网络营销产品的概念举例
  • 做网站哪些公司娄底网站推广
  • 汉中市建设工程质量安全监督站官网江西省上饶市建设局网站
  • 郑州东站附近网站建设公司明年房价走势最新消息
  • 高端网站建设免费分析erp软件多少钱一套