java matlab绘图_Java 调用Matlab画图实用教程

本文主要讲述使用Java程序调用Matlab画图的步骤。

1、编写Matlab绘图程序

functiondrawzhexiantu(x,y)%绘图

plot(x_real, y_real, '--*b'); %线性,颜色,标记

%设置标题

title([ceshileixing,ceshifangshi,ganraoleixing,'测试结果']);

legend('真实值','测试值'); %右上角标注(图例)

xlabel('东方向') %x轴坐标描述

ylabel('北方向') %y轴坐标描述

grid on; %网格线

把程序保存为drawzhexiantu.m

2、在matlab控制台输入deploytool,在出现的如下界面选择Linrary Compiler

3、选择Linrary Compiler后出现如下界面:

(1)在上图中的TYPE栏中选择Java Package,在EXPORTED FUNCTIONS栏中点击右侧的加号,选择刚刚写好的.m文件选择,这里选择刚刚编好的drawzhexiantu.m文件。

(2)选择好之后会看到Library Name栏会自动填充对应的jar名称。

(3)双击Class Name栏,修改类的名称为Draw。

(4)最后,点击右上方的Package即可生成对应的jar。

上述步骤如图:

打包成功后界面如下图,同时在对应的目录下生成了drawzhexiantu目录,在文件夹中有对应的drawzhexiantu.jar

4、创建java程序调用打包的jar:

创建Java Project,导入drawzhexiantu.jar和matlab安装目录下的javabuilder.jar,在对应的程序如下:

public class PlotTest {

public static void main(String[] args) {

System.out.println( System.getProperty("java.library.path"));

// TODO Auto-generated method stub MWNumericArray x = null; // 存放x值的数组 MWNumericArray y = null; // 存放y值的数组 Draw draw = null;

int n = 20; // 作图点数

try {

// 分配x、y的值 int[] dims = { 1, n };

x = MWNumericArray.newInstance(dims, MWClassID.DOUBLE,

MWComplexity.REAL);

y = MWNumericArray.newInstance(dims, MWClassID.DOUBLE,

MWComplexity.REAL);

// 定义 y = x^2 for (int i = 1; i <= n; i++) {

x.set(i, i);

y.set(i, i * i);

}

// 初始化plotter的对象 thePlot = new Plotter();

draw = new Draw();

// 作图 draw.drawzhexiantu(x, y, x, y, "", "", "");

draw.waitForFigures();

}

catch (Exception e) {

System.out.println("Exception: " + e.toString());

}

finally {

// 释放本地资源 MWArray.disposeArray(x);

MWArray.disposeArray(y);

if (thePlot != null)

thePlot.dispose();

}

}

}

5、运行效果

注:本图与前面写的matlab程序相比多加了一条曲线

有问题欢迎留言。

参考资源:

欢迎关注本人微信公众号

一起学习,共同进步!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值