График X-Y в PictureBox - VB
Формулировка задачи:
Попытаюсь объяснить понятнее, что у меня происходит.
Имеется два массива X(kol,kol) и Y(kol). X - это дата и время, Y-числа формата Double. Рисую в PictureBox двумерный график X от Y:
Даты и время перевожу в числовое значение. Разница между точками 1 минута. На графике же у меня получается, что на одном времени по несколько точек сидит. Не знаю понятно объяснил или нет? Т.е. Сначала 6 точек с одинаковым значением X располагаются друг над другом (т.е. по оси Y значения разные , все норм), потом еще несколько точек друг над другом и т.д. Количество точек с одинаковым X по разному от 4-х до 6-и. Шаг между одними точками с одинаковым X и другими примерно 0.004 в числовом формате.
Я проверял CDbl(X(i,1)) + CDbl(X(i,2)), у каждой точки разное число (отличие в 3-ем знако после запятой), а на графике по несколько точек располагаются друг над другом с одинаковым X.
Как с этим бороться? Не понимаю где может быть ошибка.
Решение задачи: «График X-Y в PictureBox»
textual
Листинг программы
'Xmin = CDbl(X(1,1)) + CDbl(X(1,2)) 'Xmax = CDbl(X(kol,1)) + CDbl(X(kol,2)) Xmin = CDbl(X(1,2)) Xmax = CDbl(X(kol,1))-CDbl(X(1,1)) + CDbl(X(kol,2)) Ymin = Pmax * 1.2 Ymax = Pmin / 1.2 dX=(xmax-xmin)/16 Picture4.Scale (Xmin-dx, Ymin)-(Xmax+dx, Ymax) For i = 1 To kol 'Picture4.Circle (CDbl(X(i,1)) + CDbl(X(i,2)), Y(i)), Picture4.ScaleWidth / 200 Picture4.Circle (CDbl(X(i,1)) + CDbl(X(i,2))-CDbl(X(1,1)), Y(i)), Picture4.ScaleWidth / 200 Next i
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д