Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 04.05.2010
Сообщений: 29

Добавление кнопки в jfreechart

28.04.2013, 13:56. Показов 1228. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день. Можете помочь с одной задачкой. Нужно добавить кнопку для изменения коэффициентов дискритизованого представления синуса. График строю за помощью библиотеки jfreechart.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.axis.ValueAxis;
 
import org.jfree.chart.plot.XYPlot;
import org.jfree.data.time.Millisecond;
 
import org.jfree.data.time.TimeSeries;
import org.jfree.data.time.TimeSeriesCollection;
import org.jfree.data.xy.XYDataset;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;
 
import javax.swing.*;
 
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.concurrent.TimeUnit;
 
public class natal extends ApplicationFrame  {
 
   int T=250;
   int K=5;
   double w=0.5;
 
   TimeSeries series;
   ActionListener listener =this.new TimePrinter();
   long start = System.currentTimeMillis();
 
   class TimePrinter implements ActionListener
  {
   public void actionPerformed(ActionEvent event)
   {
       long start1 = System.currentTimeMillis();
       double start2=(start1-start);
       double start3=(start2-T);
       double x=start2/1000;
       double v=start3/1000;
       double z=K*Math.sin(-v*w);
       series.add(new Millisecond(), z);
       try {
        TimeUnit.MICROSECONDS.sleep(1);
    } catch (InterruptedException e) {
 
        e.printStackTrace();
    }
         double p=K*Math.sin(-x*w);
       series.add(new Millisecond(), p);
 
 
   }
  }
 
    public natal(final String title) {
 
        super(title);
        series = new TimeSeries("A*Sin(t*T)", Millisecond.class);
        Timer timer = new Timer(T,listener);
         TimeSeriesCollection dataset = new TimeSeriesCollection(series);
        JFreeChart chart = createChart(dataset);
 
        chart.setBackgroundPaint(Color.LIGHT_GRAY);
 
        final JPanel content = new JPanel(new BorderLayout());
 
        final ChartPanel chartPanel = new ChartPanel(chart);
 
        content.add(chartPanel);
 
        chartPanel.setPreferredSize(new java.awt.Dimension(800, 500));
 
        setContentPane(content);
 
 
        timer.start();
 
    }
 
 
 
    private JFreeChart createChart(final XYDataset dataset) {
        final JFreeChart result = ChartFactory.createTimeSeriesChart(
                "",
                "Час",
                "Амплитуда",
                dataset,
                true,
                true,
                false
        );
 
 
        final XYPlot plot = result.getXYPlot();
 
        plot.setBackgroundPaint(new Color(0xffffe0));
        plot.setDomainGridlinesVisible(true);
        plot.setDomainGridlinePaint(Color.lightGray);
        plot.setRangeGridlinesVisible(true);
        plot.setRangeGridlinePaint(Color.lightGray);
 
        ValueAxis xaxis = plot.getDomainAxis();
        xaxis.setAutoRange(true);
 
 
        xaxis.setFixedAutoRange(30000);
        xaxis.setVerticalTickLabels(true);
 
        ValueAxis yaxis = plot.getRangeAxis();
        yaxis.setRange(-K,K);
 
        return result;
    }
 
 
 
    public static void main(final String[] args) {
        final natal demo = new natal("График");
        demo.pack();
        RefineryUtilities.centerFrameOnScreen(demo);
        demo.setVisible(true);
    }
 
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.04.2013, 13:56
Ответы с готовыми решениями:

Добавление кнопки
Добрый вечер! Разбираю пример из книги по добавлению кнопки, программа работает по следующему принципе: создаём кнопку, нажимаем, и...

Работа с jfreechart
Не подскажите мануал по работе с jfreechart?:)

Трудности с JFreeChart
Привет, Дело вот в чем: мне нужно было построить круговую диаграмму в проекте, поэтому вначале использовал paintComponent и в частности...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.04.2013, 13:56
Помогаю со студенческими работами здесь

JFreeChart на панель
Имеется код: package javaapplication1; import javax.swing.JFrame; import org.jfree.chart.ChartFactory; import...

Добавление кнопки на форму
В общем нужно добавить на форму кнопку и сделать так чтобы она реализовала определенный код....но я ее добавляю, и мало того что она не...

Добавление кнопки в ListBoxItem
Здравсвуйте, столкнулся с такой проблемой. Необходимо добавить кнопку в listboxitem.В listboxitem'е помимо кнопки есть ещё текст.

Добавление кнопки в класс
Создал свой класс, наследуемый от TImage Мне нужно, чтобы под изображением была кнопка Пробовал объявить private: TButton...

Добавление кнопки gtkmm
Привет читатель) Кроч есть у меня код который рисует линию по точкам(точки читаються из файла) половину кода взял тут класс с точками...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью в КА2. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа в КА2. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru