Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
9 / 10 / 4
Регистрация: 14.06.2011
Сообщений: 108
1

Точки в Чарте

05.06.2013, 20:29. Показов 1148. Ответов 12
Метки нет (Все метки)

Есть программа, которая находит несколько точек в Chart( кол-во зависит от начальных значений). Проблема в том, что не все точки показываются, происходит некоторое наложение. Как сделать,что бы график начинался не от самого края оси, а был отступ? При необходимости могу выложить прогу.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.06.2013, 20:29
Ответы с готовыми решениями:

Несколько графиков на одном чарте
Доброго времени суток! Как создать Series2 в том же Chart1, где рисуется Series1? Series1...

Графики на форме в чарте
В программе считается некоторая функция в цикле. double f1 = P(a, XD, sigma1, 0); Результаты...

Изменить стиль Series в чарте
Здраствуйте! Можно ли и как, если можно, в програме кодом изменить стиль Series в чарте? Например...

Отображение имён серий на чарте (ось Y)
Уважаемые форумчане! Вопрос к теме "информативного" GUI. Исх данные: - есть CHART - динамически...

12
9 / 10 / 4
Регистрация: 14.06.2011
Сообщений: 108
06.06.2013, 23:27  [ТС] 2
Вопрос всё еще актуален.
0
308 / 61 / 12
Регистрация: 21.12.2011
Сообщений: 291
07.06.2013, 05:56 3
C++
1
2
Chart1->BottomAxis->Automatic=0;//убираем автоматическое изменение масштаба оси
Chart1->BottomAxis->Minimum = Xmin;//устанавливаем левую границу нижней оси
Где Xmin - нужный отступ относительно оси OX

Вы про это?
1
1089 / 587 / 121
Регистрация: 11.11.2008
Сообщений: 1,544
07.06.2013, 07:12 4
Цитата Сообщение от .Frost. Посмотреть сообщение
При необходимости могу выложить прогу.
выкладывайте
0
9 / 10 / 4
Регистрация: 14.06.2011
Сообщений: 108
07.06.2013, 07:52  [ТС] 5
Выложил.
0
Вложения
Тип файла: rar Ньютон-Рафсон.rar (775.5 Кб, 14 просмотров)
9 / 10 / 4
Регистрация: 14.06.2011
Сообщений: 108
07.06.2013, 07:53  [ТС] 6
Цитата Сообщение от Nkey Посмотреть сообщение
C++
1
2
Chart1->BottomAxis->Automatic=0;//убираем автоматическое изменение масштаба оси
Chart1->BottomAxis->Minimum = Xmin;//устанавливаем левую границу нижней оси
Где Xmin - нужный отступ относительно оси OX

Вы про это?
Надо попробовать.
0
308 / 61 / 12
Регистрация: 21.12.2011
Сообщений: 291
07.06.2013, 07:58 7
Проверку синтаксиса эдитов не забудьте добавить...)
0
9 / 10 / 4
Регистрация: 14.06.2011
Сообщений: 108
11.06.2013, 14:13  [ТС] 8
В итоге, из этого:
Точки в Чарте
(я хочу,чтобы выделенные точки были виднее, т.к. на верху,к примеру находится 2 точки,что плохо видно).

получилось вот это:
Точки в Чарте

Но почему-то видны не все точки, вот код,который я ввел:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Chart1->BottomAxis->Automatic=0;
    if (X0.X<Ans.X)
    {
    Chart1->BottomAxis->Minimum = -0.5;
    Chart1->BottomAxis->Maximum = 0.5;
    }
    else
    {
    Chart1->BottomAxis->Minimum = -0.5;
    Chart1->BottomAxis->Maximum = 0.5;
    }
 
    Chart1->LeftAxis->Automatic=0;
    if (X0.Y<Ans.Y)
    {
    Chart1->LeftAxis->Minimum = -0.5;
    Chart1->LeftAxis->Maximum = 0.5;
    }
    else
    {
    Chart1->LeftAxis->Minimum = -0.5;
    Chart1->LeftAxis->Maximum = 0.5;
    }
Условие сделал потому,что начальное значение может быть меньше/больше решения.

Еще вопрос: у меня,при передвижении курсора по Чарту показывает координаты точки. но до нажатия кнопки Поиск,если навести курсор на чарт,выдает ошибку, что понятно. Так вот, как сделать,что б ошибки не было?
0
308 / 61 / 12
Регистрация: 21.12.2011
Сообщений: 291
11.06.2013, 14:24 9
Код не совсем понятен.. Если это - то делаем это, иначе - делаем тоже самое..

Можно еще
C++
1
Chart1->BottomAxis->Automatic=0;
Заменить в настройках чарта.. Там галку с автоматик убрать и с осей(вроде)... Просто помню, у меня было некорректно из-за того, что кодом менялось на ручное изменение оси... Может и не поможет... Не знаю..

Можно так еще сделать..
C++
1
2
//устанавливаем шаг сетки по оси y = (макс-мин)/10
        Chart1->LeftAxis->Increment=(Chart1->LeftAxis->Maximum - Chart1->LeftAxis->Minimum)/10;
для сетки.. и повторить можно для X...

Второй вопрос не совсем понятен..
1
9 / 10 / 4
Регистрация: 14.06.2011
Сообщений: 108
11.06.2013, 14:37  [ТС] 10
Второй вопрос исправил, вроде. С первым хочу попробовать прокрутку с помощью свойств или скролла. Сделал так:
C++
1
2
3
4
5
6
7
Chart1->BottomAxis->Minimum = -1;
  Chart1->BottomAxis->Maximum = 1;
  Chart1->BottomAxis->Increment = 0.01;
 
  Chart1->LeftAxis->Minimum = -1;
  Chart1->LeftAxis->Maximum = 1;
  Chart1->LeftAxis->Increment = 0.01;
Получилось почти,что хотел, но точки еще больше накладываются друг на друга. Видны только 2
0
308 / 61 / 12
Регистрация: 21.12.2011
Сообщений: 291
11.06.2013, 14:42 11
А вы не пробовали здесь ширину и длину точек настроить?... Или в вашем случае не подойдет?
Точки в Чарте
0
308 / 61 / 12
Регистрация: 21.12.2011
Сообщений: 291
11.06.2013, 14:44 12
Цитата Сообщение от .Frost. Посмотреть сообщение
Второй вопрос исправил, вроде. С первым хочу попробовать прокрутку с помощью свойств или скролла. Сделал так:
C++
1
2
3
4
5
6
7
Chart1->BottomAxis->Minimum = -1;
  Chart1->BottomAxis->Maximum = 1;
  Chart1->BottomAxis->Increment = 0.01;
 
  Chart1->LeftAxis->Minimum = -1;
  Chart1->LeftAxis->Maximum = 1;
  Chart1->LeftAxis->Increment = 0.01;
Получилось почти,что хотел, но точки еще больше накладываются друг на друга. Видны только 2
Инкремент 0.2 сделайте или, если вам нужно до сотых то хотя бы 0.02.. может покрасивее будет)
0
9 / 10 / 4
Регистрация: 14.06.2011
Сообщений: 108
11.06.2013, 15:02  [ТС] 13
Цитата Сообщение от Nkey Посмотреть сообщение
Инкремент 0.2 сделайте или, если вам нужно до сотых то хотя бы 0.02.. может покрасивее будет)
В итоге решил не мудрить, сделал через увеличение масштаба. Думаю прокатит)
Спасибо за помощь.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.06.2013, 15:02

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

На графике отметить асимптоты, точки экстремума, точки перегиба, точки пересечения с осями координат
Что-то выходит не совсем правильный график. clc; clear all; close all; l = -10; r =...

Найти работу силы по перемещению точки вдоль участка кривой от точки до точки
Найти работу силы f(x,y)=(2xy-4y)i - (x^2 -y)j по перемещению точки вдоль участка кривой x=3y^2 от...

Найти координаты низкой точки траектории и другой высшей точки подъема
Заданные координаты точки подвески математического маятника A (x0, y0, z0) и координаты одной из...

Найдите работу силы при перемещении вдоль линии от точки до точки
Как найти работу силы \vec{F} при перемещении вдоль линии L от точки M до точки N...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.