jzy3D从入门到弃坑_3

使用jzy3D0.9画2D散点图–多条线条

觉得有用的话,欢迎一起讨论相互学习~

主要思路

  • 将多个线条的二维数组读入Scatter对象
  • 存入到同一个画布中

存入多个Scatter对象中

package momfo.metaheuristics.momfea;import momfo.core.SolutionSet;
import org.jzy3d.chart.Chart;
import org.jzy3d.chart.ChartLauncher;
import org.jzy3d.colors.Color;
import org.jzy3d.global.Settings;
import org.jzy3d.maths.Coord3d;
import org.jzy3d.plot3d.primitives.Scatter;
import org.jzy3d.plot3d.rendering.canvas.Quality;
import org.jzy3d.chart.Chart;import java.awt.*;public class PlotTwoD_alpha {//如果要在一张图中添加多个点,我们采用首先取点,然后生成颜色的方式public Scatter Setpoint(double[][] maxtrix, float[] rgb, float alpha, float width) {Coord3d[] POINTS;Color[] COLORS;int size = maxtrix.length;//sizeint numobj = maxtrix[0].length;//2float x;float y;float z;POINTS = new Coord3d[size];COLORS = new Color[size];for (int i = 0; i < size; i++) {x = 0;y = (float) maxtrix[i][0];z = (float) maxtrix[i][1];POINTS[i] = new Coord3d(x, y, z);COLORS[i] = new Color(rgb[0], rgb[1], rgb[2], alpha);//表示RGB值和透明度}Scatter scatter = new Scatter(POINTS, COLORS, width);//width 表示线条宽度return scatter;}
}

在同一画布中将多个Scatter表示出来

package momfo.metaheuristics.momfea;import java.awt.*;
import java.io.IOException;
import java.text.DecimalFormat;
import java.util.HashMap;import momfo.core.*;
import momfo.util.comparators.LocationComparator;import momfo.operators.crossover.CrossoverFactory;
import momfo.operators.mutation.MutationFactory;
import momfo.operators.selection.SelectionFactory;
import momfo.problems.benchmarks.*;
import momfo.qualityIndicator.QualityIndicator;
import momfo.util.JMException;
import org.jzy3d.chart.Chart;
import org.jzy3d.chart.ChartLauncher;
import org.jzy3d.global.Settings;
import org.jzy3d.plot3d.primitives.Scatter;
import org.jzy3d.plot3d.rendering.canvas.Quality;public class ReadPrintPF {public static void main(String args[]) throws IOException, JMException, ClassNotFoundException {ProblemSet problemSet; // The problem to solvemomfo.qualityIndicator.util.MetricsUtil utils_;SolutionSet TruePFT1;SolutionSet TruePFT2;problemSet = CIHS.getProblem();String pf1 = "PF/" + problemSet.get(0).getHType() + ".pf";String pf2 = "PF/" + problemSet.get(1).getHType() + ".pf";utils_ = new momfo.qualityIndicator.util.MetricsUtil();// 返回的是一个solutionSet变量//使用这种方式读取的SolutionSet没有决策变量TruePFT1 = utils_.readNonDominatedSolutionSet(pf1);TruePFT2 = utils_.readNonDominatedSolutionSet(pf2);
//        TruePFT1.printObjectivesToFile("./src/main/java/momfo/metaheuristics/momfea/" + "CIHS" + "T1" + ".txt");//并且可以发现目标函数值都是double类型的浮点数类型
//        TruePFT1.printObjectives();ReadPrintPFTools tools = new ReadPrintPFTools();double[][] TruePFT1_Matrix = tools.writeObjectivesToMatrix(TruePFT1);double[][] TruePFT2_Matrix = tools.writeObjectivesToMatrix(TruePFT2);float[] rgb1 = {0, 0, 0};//黑色float[] rgb2 = {(float) 0.5, (float) 0.5, (float) 0.5};//灰色float alpha = (float) 0.5;PlotTwoD_alpha pttwoD = new PlotTwoD_alpha();Scatter scatter1 = pttwoD.Setpoint(TruePFT1_Matrix, rgb1, alpha, 5);Scatter scatter2 = pttwoD.Setpoint(TruePFT2_Matrix, rgb2, alpha, 5);Chart chart = new Chart(Quality.Advanced, "awt");// add scatterschart.getScene().add(scatter1);chart.getScene().add(scatter2);Settings.getInstance().setHardwareAccelerated(true);//open chartChartLauncher.openChart(chart, new Rectangle(0, 0, 600, 600), "CIHS");}}

结果

jzy3D从入门到弃坑_3使用jzy3D0.9画2D散点图--多条线条相关推荐

  1. jzy3D从入门到弃坑_2使用jzy3D0.9画2D散点图

    jzy3D从入门到弃坑_2 使用jzy3D0.9画2D散点图 觉得有用的话,欢迎一起讨论相互学习~ 在上一节中安装jzy3D 0.9版本并且运行了3D的例子 https://blog.csdn.net ...

  2. jzy3D从入门到弃坑_4尝试使用jzy3D1.0画图失败

    jzy3D从入门到弃坑_4 尝试使用jzy3D1.0画图失败 觉得有用的话,欢迎一起讨论相互学习~ 记录一下使用jzy3D1.0失败 究其原因在于 本人才疏学浅,对于JAVA openGL真的是一窍不 ...

  3. Redis 从入门到弃坑

    Redis 从入门到弃坑 简介 摘自:http://www.redis.cn/ Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. 它支持多种类型的 ...

  4. Xposed从入门到弃坑:0x03、XposedHelpers类解析

    感觉好久没更新xposed教程了.应该有两个月了,主要是工作太忙,没有时间写博客.这节主要讲解XposedHelpers类的一些用法,对前面内容有遗忘的可以再回过去预习下. 更多精彩内容可以关注我的博 ...

  5. java从入门到弃坑十五天

    1.多线程:A:线程是依赖于进程而存在的,进程是正在执行的程序,线程是进程的执行路径和单元. B:多线程的两种方式:继承thread类或实现runnable接口. exp:1.继承thread类 pu ...

  6. 前端防御从入门到弃坑--CSP变迁

    转载至https://lorexxar.cn/2017/10/25/csp-paper/ 原文是我在内部showcase的时候修改而来的,总结了一些这一年接触CSP的很多感想- 查看全文 http:/ ...

  7. jzy3D安装到弃坑

    jzy3D从入门到弃坑 安装 http://www.jzy3d.org/ 官网 选择DL 选择0.9版使用,而不要使用其他版本 具体原因 高版本不稳定 高版本例子收费 下面实例代码 Easy to u ...

  8. 小奇鸽的-iApp弃坑宝典

    主题:关于时代的反思与弃坑之路 总体构思:从入门到弃坑 首先,我也是突然一时兴起才想学习编程的,觉得程序员很牛*,也是偶然间找到了第一款手机编程软件:AIDE 刚接触的是英文版,看着里面的教程是一脸懵 ...

  9. 为什么要强制弃坑Fastjson而主推Jackson?

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 来源:toutiao.com/i681590686818 ...

最新文章

  1. android 滑动顶部固定,android view滑动到顶部悬停
  2. Linux命令——mv
  3. 哈尔滨金融学院计算机系学生会,哈尔滨金融学院计算机系实习报告(毕业分散实习).doc...
  4. 【C 语言】文件操作 ( 学生管理系统 | 插入数据 | 查询数据 | 删除数据 )
  5. ccaf internship
  6. Debian 7.1.0 安装教程图解(——Debian系统轻量级快速安装法)
  7. ORACLE_关于OGG参数.ENABLE_GOLDENGATE_REPLICATION
  8. centos 7 mysql随机密码_在centos中安装了mysql5.7之后解决不知道随机的密码的问题...
  9. 剑指offer--面试题19
  10. 什么是物联网?在生活中有何体现?
  11. 现在维吾尔语在计算机中发展,维吾尔语手写体在线计算机识别技术研究.doc
  12. luogu p1799 数列_NOI导刊2010提高(06)
  13. 推荐一个滴滴开源的跨端整体解决方案!
  14. ie浏览器跳不出下一个页面怎么回事_用户现在可以在微软Edge Chromium中启动IE模式访问传统老旧网站...
  15. 中控考勤仪IFace302多线程操作时无法订阅事件
  16. 如何批量压缩图片大小?教你3个批量压缩图片的方法
  17. Python实操:正态分布检验
  18. 全国物流企业有哪些 物流企业详细信息怎么查询
  19. c语言程序设计五子棋棋盘怎么画,五子棋的棋盘画不出来,求助!!
  20. 测量小助手——典型用户及使用场景

热门文章

  1. LVGL的PC端移植和STM32F429阿波罗开发板移植
  2. 消除LightGBM训练过程中出现的[LightGBM] [Warning] No further splits with positive gain, best gain: -inf
  3. unity相机远近缩放和拖拽移动
  4. 货币时间价值(学习笔记)
  5. 【项目实战-MATLAB】:基于机器学习的虹膜识别系统设计
  6. Alan Walker MV 合辑01 by defender 歌词
  7. flutter doctor --android-licenses
  8. wordwrap() 函数
  9. Linux添加硬盘并挂载(超细致)
  10. 大一下学期第十一周及以前学习总结