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

简单介绍网站建设的一般流程漯河哪里做网站

简单介绍网站建设的一般流程,漯河哪里做网站,亿企邦网站建设,可以做调查问卷的网站文章目录 导入数据文件对话框修改绘图逻辑源代码 Python绘图系统系列#xff1a;将matplotlib嵌入到tkinter 简单的绘图系统 导入数据 单纯从作图的角度来说#xff0c;更多情况是已经有了一组数据#xff0c;然后需要将其绘制。这组数据可能是txt格式的#xff0c;也可能… 文章目录 导入数据文件对话框修改绘图逻辑源代码 Python绘图系统系列将matplotlib嵌入到tkinter 简单的绘图系统 导入数据 单纯从作图的角度来说更多情况是已经有了一组数据然后需要将其绘制。这组数据可能是txt格式的也可能是csv格式的还可能是二进制数据。当然这些一会儿在想首先就是要添加一个按钮将setCtrlButtons函数添加一行 def setCtrlButtons(self, frm):ttk.Button(frm, text绘图,width5,commandself.btnDrawImg).pack(sidetk.LEFT)ttk.Button(frm, text加载,width5,commandself.btnLoadData).pack(sidetk.LEFT)然后就可以考虑self.btnLoadData函数了。 简洁起见以后将不再具体展示setCtrlButtons的具体代码而只是写出新增的代码。 文件对话框 加载数据其实就是加载文件那么文件对话框就很重要。 tkinter.filedialog中的askopenfilename就是文件对话框预感这个函数可能不止一处出现故而导入一下以方便调用 from tkinter.filedialog import askopenfilename这个函数的好处是只返回读取到的文件名而不像askopenfile一样返回一个文件对象。 而self.btnLoadData函数如果只是想实现一个最简单的功能那么 可以写为 def btnLoadData(self):name askopenfilename()data np.genfromtxt(name)if data.shape[1] 2:returnself.xs data[:,0]self.ys data[:,1]self.drawPlot()效果如下 修改绘图逻辑 现在我们有了两种数据生成模式一是用语法生成二是通过加载得到。但目前来说这两种生成方式并不兼容。为了解决这个问题可以为x和y的输入框添加一个标识比如当x或者y的输入框中是data的时候再点击绘图就可以选中加载后的数据。 由于tkinter中输入Entry内容比较繁琐所以封装一个全局的函数专门用于更改Entry内容 def setEntry(e, text):e.delete(0, end)e.insert(0, text)接下来将加载数据函数和绘图函数分别改写为 def btnLoadData(self):name askopenfilename()data np.genfromtxt(name)if data.shape[1] 2:returnself.xs data[:,0]setEntry(self.xEntry, data)self.ys data[:,1]setEntry(self.yEntry, data)def btnDrawImg(self):xLab self.xEntry.get()if xLab ! data:x eval(fnp.linspace({xLab}))self.xs xelse:x self.xsyLab self.yEntry.get()if yLab ! data:self.ys eval(yLab)self.drawPlot()在btnLoadData函数中取消了绘图功能而是在导入数据后将xEntry和yEntry的内容设置为data。 而绘图函数中检测xEntry和yEntry的内容如果是data那么说明已经读取到了相关数据就直接调用而非重新生成。 源代码 最后把源代码附在下面 import tkinter as tk import tkinter.ttk as ttk from tkinter.filedialog import askopenfilenameimport matplotlib as mpl mpl.use(TkAgg) import matplotlib.pyplot as plt from matplotlib.backends.backend_tkagg import (FigureCanvasTkAgg, NavigationToolbar2Tk) from matplotlib.figure import Figureimport numpy as npdef setEntry(e, text):e.delete(0, end)e.insert(0, text)class DarwSystem():def __init__(self):self.root tk.Tk()self.root.title(数据展示工具)frmCtrl ttk.Frame(self.root,width320)frmCtrl.pack(sidetk.RIGHT, filltk.Y)self.setFrmCtrl(frmCtrl)frmFig ttk.Frame(self.root)frmFig.pack(sidetk.LEFT,filltk.BOTH,expandtk.YES)self.setFrmFig(frmFig)self.root.mainloop()def setFrmCtrl(self, frmCtrl):frm ttk.Frame(frmCtrl, width320)frm.pack(sidetk.TOP, filltk.X)self.setCtrlButtons(frm)frm ttk.Frame(frmCtrl)frm.pack(sidetk.TOP, filltk.X)self.setFrmX(frm)frm ttk.Frame(frmCtrl)frm.pack(sidetk.TOP, filltk.X)self.setFrmY(frm)def setFrmX(self, frm):tk.Label(frm, textx).pack(sidetk.LEFT)self.xEntry tk.Entry(frm)self.xEntry.pack(sidetk.LEFT, filltk.X)def setFrmY(self, frm):tk.Label(frm, texty).pack(sidetk.LEFT)self.yEntry tk.Entry(frm)self.yEntry.pack(sidetk.LEFT, filltk.X)def setCtrlButtons(self, frm):ttk.Button(frm, text绘图,width5,commandself.btnDrawImg).pack(sidetk.LEFT)ttk.Button(frm, text加载,width5,commandself.btnLoadData).pack(sidetk.LEFT)def btnLoadData(self):name askopenfilename()data np.genfromtxt(name)if data.shape[1] 2:returnself.xs data[:,0]setEntry(self.xEntry, data)self.ys data[:,1]setEntry(self.yEntry, data)def btnDrawImg(self):xLab self.xEntry.get()if xLab ! data:x eval(fnp.linspace({xLab}))self.xs xelse:x self.xsyLab self.yEntry.get()if yLab ! data:self.ys eval(yLab)self.drawPlot()def drawPlot(self):self.fig.clf()ax self.fig.add_subplot()ax.plot(self.xs, self.ys)self.fig.subplots_adjust(left0.1, right0.95, top0.95, bottom0.08)self.canvas.draw()passdef setFrmFig(self, frmFig):self.fig Figure()self.canvas FigureCanvasTkAgg(self.fig,frmFig)self.canvas.get_tk_widget().pack(sidetk.TOP,filltk.BOTH,expandtk.YES)self.toolbar NavigationToolbar2Tk(self.canvas,frmFig,pack_toolbarFalse)self.toolbar.update()self.toolbar.pack(sidetk.RIGHT)if __name__ __main__:test DarwSystem()
http://www.dnsts.com.cn/news/30885.html

相关文章:

  • 福州如何做百度的网站推广自定义wordpress背景图片
  • 如何熟悉网站项目的逻辑网站建设可行性报告范文
  • 九江城乡建设网站为什么打不开北滘高明网站建设
  • 怎样查看别人网站流量代码网页制作
  • 做网站开通手机验证功能陕西教育建设信息网站
  • 大型网站制作都有哪些北京专业的做网站
  • 对网站主要功能界面进行赏析免费的html网站
  • 扬州整站seowordpress wp-pic
  • 做网站编辑需要看什么书wordpress 破解账号
  • 青岛网站建设服务公司开通微信公众号流程需要什么
  • 如何创建一个免费网站贵州网站推广公司
  • 简单的网站建立怎么做网站建设与管理自考重点
  • 许昌市建设信息网站做打鱼网站的代理
  • 网站做好了 怎么做解析成都哪里可以做网站
  • 做我女朋友的表白句的网站公众号排版设计
  • 地方旅游网站模板凡科建站官网
  • 网站建设的经费预算报告罗湖住房和建设局网站
  • 苏州做网站设计的公司设计论坛最好的网站
  • 可以做平面设计兼职的网站云南建设厅网站公示
  • 网站建设有什么作用商贸行业网站建设哪家
  • 网站建设与维护浙江省试题陕西做天然气公司网站
  • 微信端网站开发流程图今天最新新闻摘抄
  • 网站后台如何修改密码免费国外网站空间
  • .net网站做增删改网站开发团队简介如何写
  • 钢铁行业公司网站模板自建网站怎么做二级页跳转
  • 专业的网站开发公司电话建设网站女装名字大全
  • 推荐做微商海报的网站免费网站模板 下载
  • 贵阳网站建设外包网站开发工资高嘛
  • 深圳网站设计收费西安百度首页优化
  • 临沂建设局官方网站基于php网站建设论文