我有一个描述管道压力的数组的时间历史.因此,对于每个delta t,我在管道长度上有一系列压力值.我想用JFreeChart绘制沿管道长度的压力,并选择哪个delta t用滑块绘制,这样无论何时用户移动滑块,图形都会更新来自不同delta t的值.我也将瓷砖重置为管道最后部分的压力.会发生什么是标题是更新,意味着数据正在更新,但曲线保持不变.我已经在论坛上阅读了所有可能的主题并尝试了我能想到的一切,但它没有用!这是我的类的代码,它扩展了JPanel,其中方法jSlider1StateChanged听到滑块位置的变化,createChart在程序启动时创建一个新图表,dataSetGen(int ndt)根据滑块位置生成图形的新数据集:
public class MyMainPanel extends JPanel {
private JFreeChart jc;
private OutputPipe op;
private DefaultXYDataset ds;
private javax.swing.JFrame jFrame1;
private javax.swing.JSlider jSlider1;
private pipevisualizer.MyChartPanel pnlChartPanel;
private void jSlider1StateChanged(javax.swing.event.ChangeEvent evt) {
int ndt = ((JSlider) evt.
getSource()).
getValue();
System.out.println("Slider1: " + ((JSlider) evt.
getSource()).
getValue());
dataSetGen(ndt);
int a = 0;
jc.fireChartChanged();
}
private void dataSetGen(int ndt) {
ArrayList<OutputPipeDt> opDtArray = op.getOpLit();
OutputPipeDt opDt = opDtArray.get(ndt);
double[] H = opDt.getH();
double[] l = new double[H.length];
double[] p = …Run Code Online (Sandbox Code Playgroud)