一个函数x(t)=-2tsin(tt),0≤t≤8,从0开始,以△t=0.01、0.02,0.04、0.08、0.1,0.25,0.5、1等为间隔,分别绘制不同△t下的x(t)的离散曲线。每个离散样本点可用‘’显示,程序采用JAVA实现。
import javax.swing.JFrame;
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PlotOrientation;
import org.jfree.chart.plot.XYPlot;
import org.jfree.chart.renderer.xy.XYLineAndShapeRenderer;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;
import java.util.Scanner;
public class DrawMath {
public static void main(String[] args) {
XYSeries series = new XYSeries("xySeries");
for (double t = 0; t < 8 ; t = t + 0.01) {
double x = -2*t*Math.sin(t*t);
series.add(t, x);
}
XYSeriesCollection dataset = new XYSeriesCollection();
dataset.addSeries(series);
JFreeChart chart = ChartFactory.createXYLineChart(
"x(t)=-2tsin(t2)", // chart title
"t", // x axis label
"-2tsin(t2)", // y axis label
dataset, // data
PlotOrientation.VERTICAL,
false, // include legend
false, // tooltips
false // urls
);
XYPlot plot = (XYPlot)chart.getPlot();
XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer();
renderer.setSeriesLinesVisible(0, false); // 设置连线不可见
plot.setRenderer(renderer);
ChartFrame frame = new ChartFrame("my picture", chart);
frame.pack(); // fit window to figure size
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
这是我写的代码,目前只能在源码中修改数值以实现不同t和△t的函数图像,我想要实现数据交互,就是能输入t和△t后再展现图像
我的代码实现后的样子
以下是我想要实现交互后类似的样子