MATLAB社区

MATLAB、社区和更多

在MATLAB交互式web页面,第3部分

正如所承诺的在我最后发表,本周我们将完成我们的GUI将一个动态生成的MATLAB图回到web页面。

为了展示这一点,我们将建立在上周的最后一个例子。在这个示例中,设置的页面生成一个正弦波源自于HTML表单。而不是情节在一个单独的图显示窗口中,我们将创建它并打印一个文件,它将会被加载到web页面。

演示(右键单击保存)只会工作在web浏览器MATLAB在Windows(对不起,肯)。


MATLAB与正弦波演示Web浏览器

单击“阴谋正弦波”按钮导致以下情况:

  1. 正弦和情节设置使用表单的选择,像以前一样。
  2. 情节是出口到磁盘上的文件,使用打印命令。
  3. 最新版本的磁盘上的图片所示页面,刷新一个HTML元素。

为了使这些行动工作顺利,代码使用了一些小窍门:

  • 在JavaScript函数的情节中,我们添加了一些图发布了MATLAB命令操作。下面的代码:

    commandURI + = " f =图;集(f,“可见”,“关闭”,“单位”,“像素”、“+
    ”“位置”,[0 0 270 210],“PaperPositionMode”,“汽车”);”;

    1. 创建一个新的并保存其处理。
    2. 设置图的属性,这样图是无形的(因此没有显示给用户)。
  • 这段代码的人都跟着打印命令将图导出到磁盘。指定的选项文件类型设置为PNG和打印分辨率的屏幕。
    commandURI + = " print (‘sinewave.png’,‘-dpng’, sprintf (- f % d, f),“r0”);”;
  • 在这个页面,我放在一个HTMLiframe显示图像。的iframe元素允许我更新它的内容,而无需重新加载整个页面,提供一个按钮被按下时平稳过渡。
    < iframe name = "图像" id =“图像”帧边缘= 0 marginwidth = 0滚动marginheight = 0 =没有高度宽度= 270 = 210 src = " " >

    的重要属性iframe是:id,这让我们得到它后,空的src在启动时,它给了我们一个空白页。
  • 最后这段代码的最后一行JavaScriptdrawSine ()函数。下面的代码的目的是给MATLAB足够的时间来处理情节命令,确保文件保存到磁盘之前加载。为0.5秒,这里我们设置一个定时器,超时替换图像文件的来源iframe
    setTimeout (" . getelementbyid('图像').src =“sinewave.png”;“, 500);

这是相当多的。我希望你喜欢这个跳板,好运在MATLAB gui创建HTML。让我们知道什么样的有趣和疯狂的网页你能想到的。

|
  • 打印
  • 发送电子邮件

评论

留下你的评论,请点击在这里MathWorks账户登录或创建一个新的。