Member 13307200 Ответов: 2

Как построить график из текстового файла при загрузке формы в VB .NET


Всем привет,

Я пытаюсь построить график из текстового файла .
Которые как ценность любят
13344444534987781259 10 км
78941371674890419381 20 км

я попробовал вариант диаграммы, но я хочу выбрать его из файла
это не работает ....


Пожалуйста, помогите мне..
мне нужна только линейная диаграмма xy..

Что я уже пробовал:

AutoScaleMode = 3
Ширина = 1
Меня.Цвет Фона = Цвет.Черный
Меня.Цвет Текста = Цвет.Белый


v. графика.DrawRectangle (Ручки.Красный, 2, 2, 70, 40)
v. графика.DrawRectangle (Ручки.Красный, 2, 1, 70, 40)
v. графика.DrawRectangle (Ручки.Красный, 2, 2, 70, 40)
v. графика.DrawRectangle (Ручки.Красный, 2, 1, 70, 40)
v. графика.DrawRectangle (Ручки.Красный, 2, 2, 70, 40)
v. графика.DrawRectangle (Ручки.Красный, 2, 1, 70, 40)


- Линия (10, 100)-(1300, 100)
- Линия (10, 10)-(10, 590)
- Линия (10, 300)-(1500, 300)
- Линия (10, 500)-(1500, 500)
- Линия (10, 10)-(1300, 10)
- Линия (10, 590)-(1300, 590)

2 Ответов

Рейтинг:
2

OriginalGriff

Считайте значения из файла, преобразуйте их в числовые значения и храните в коллекции экземпляров класса.
Затем используйте элемент управления Chart для отображения данных вместо того, чтобы пытаться отобразить их самостоятельно: Учебник: создание базовой диаграммы[^]


Member 13307200

нет, Грифф, я хочу нарисовать линию через сам текстовый файл...
Он работает в VB6....
Теперь мы хотим vb.net 2013 год
...
Там линия будет работать и зацикливаться на каждом номере ...

OriginalGriff

Мы говорим: не изобретайте велосипед.
Вы должны прочитать файл и преобразовать значения в цифры независимо от того, каким путем вы идете: так зачем усложнять проблему, написав код, который уже существует и работает чертовски хорошо? Взгляните на элемент управления диаграммой-он будет делать то, что вы хотите, без каких-либо проблем.
Не стоит брать код VB6 и просто "переводить его в .NET" - в долгосрочной перспективе это значительно усложняет вашу жизнь.

Member 13307200

сэр, стараясь изо всех сил помочь мне с кодом, если вы можете..

OriginalGriff

Что вы пробовали?
Покажите нам и объясните, что не работает.

Member 13307200

Для каждой строки в виде строки в файле IO.ReadAllLines("C:\Users\mks\Desktop\test.txt")
Dim points () как Double = Array.ConvertAll(линия.Split (" "c), Функция(Ы) CDbl (ы))
Chart1. Series (0).Точки.AddXY(точки(0), точки(1))
Следующий
он работает хорошо, но мой файл не разделен пространством
Он не работает для моих данных, таких как 123654889887
его работа только для
10 1
20 2
как свидание..
как мне это сделать

OriginalGriff

Ну и что же вы ожидаете от него?
если ваша строка данных всего лишь 123654889887, то как, черт возьми, вы ожидаете, что компьютер вычислит, где начинается и заканчивается каждое число?
Это первая пара (1,2), или (12, 3), или (12, 36), или (1, 234567), или ...
Если вы не можете определить формат данных, у вас нет никаких шансов правильно обработать ваш файл.

Member 13307200

именно для этого и был использован метод drawline...
или еще может сделать что-нибудь вроде подсчета нет с каждым no...as пара

Member 13307200

Грифф его работа..я сделал это с самими диаграммами спасибо за идею...

OriginalGriff

Добро пожаловать - легко, когда у тебя есть идея, не так ли? (И гораздо меньше хлопот, что сделай сам)

Member 13307200

С одной недели я работаю над этим...но никакого результата не было,
Теперь мой босс хочет с самим drawline...
буду работать над этим как только закончу обновлю u

Рейтинг:
1

Patrice T

Цитата:
я попробовал вариант диаграммы, но я хочу выбрать его из файла
это не работает ....

Ваш код должен попытаться прочитать файл.