Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Visual Studio 2010 - rysowanie wykresów

bubu2606 05 Kwi 2012 22:41 23220 75
  • #61
    klukjerzy
    Poziom 9  
    MSChart właśnie wrzuciłem sobie do vb 2008 i tera będę testował.

    Dodano po 3 [godziny] 32 [minuty]:

    Możesz mi jeszcze powiedzieć jakim poleceniem wyczyścić wykres i jak zmienić tło na czarne. Oraz jak zrobić aby rozmiar wykresu był automatycznie dostosowywany do rozmiaru okna?
  • #62
    cepelia
    Poziom 20  
    wyślij mi to co ci się udało napisać... zobaczę co da się zrobić...
  • #63
    klukjerzy
    Poziom 9  
    Chcesz cały projekt czy tylko kod do wykresu. Jeżeli kod do wykresu to jest taki jak w przykładzie podałeś, wykres rysuje za pomocą msChart.

    Kod: vbnet
    Zaloguj się, aby zobaczyć kod


    Kod: vbnet
    Zaloguj się, aby zobaczyć kod
  • #64
    klukjerzy
    Poziom 9  
    Poradziłem sobie z rysowaniem wykresu tylko za nic nie mogę dojść jak czyścić wykres. Może wiesz jak to zrobić?
  • #65
    cepelia
    Poziom 20  
    Kod: vb
    Zaloguj się, aby zobaczyć kod


    masz przykładowy kod ... pozmieniaj nazwy buttonów i powinien ci działać, przeczytaj opis bo masz tam dwie opcje rysowania wykresu...


    czyści się wykres poleceniem clear...
    Kod: vb
    Zaloguj się, aby zobaczyć kod


    wesołych świąt :)
  • #66
    cepelia
    Poziom 20  
    Mogę poradzić...

    dołóż do projektu pakiet instalacyjny i po kłopocie...



    '/ jeżeli pomogłem kliknij "pomógł"/'
  • #67
    klukjerzy
    Poziom 9  
    Pomogłeś i to bardzo nie wiem jak to zrobić odłożyć ten pakiet instalacyjny.
  • #69
    klukjerzy
    Poziom 9  
    Tak dokładnie o to mi chodzi możesz mi opisać jak to zrobić jak chcesz podeślę ci projekt mojego programu.

    Dodano po 2 [godziny] 58 [minuty]:

    Tylko ja vb 2008 nie mam tych opcji co na filmiku:(
  • #70
    klukjerzy
    Poziom 9  
    Witam wie może ktoś jak przełączyć wykres aby nie był automatycznie skalowany?
    chodzi mi o to aby np za pomocą ptaszka zmieniać skalowanie np okienko jest zaptaszkowane wykres jest skalowany dynamicznie, okienko czyste wykres jest statyczny.
  • #71
    pawgo2606
    Poziom 10  
    chciałbym wykorzystać
    Dim Bufforek As Char = SerialPort1.ReadLine()
    i teraz coś takiego że od pierwszego znaku uzależnia wyświetlanie w textboxie
    if Bufforek[0]='I' then
    i leci dalej...
    kolejne dane z bufora wyświetla..

    Inaczej tłumacząc mikrokontroler wysyła mi stringa np I43,2 odczyt prądu i teraz chcę to w odpowiednim textboxie wyświetlić, czyli jeżeli pierwszy znak jest I to w danym miejscu wyświetla natomiast resztę traktuje jak normalną liczbę 43,2
    w jaki sposób zrealizować to w VB??

    Kod: vb
    Zaloguj się, aby zobaczyć kod


    mam teraz coś takiego.. Działa bez zarzutu jednak jest jeden problem. O ile wysyłanie danych jest natychmiastowe to odbiór następuje już ze znacznym opóźnieniem sięgającym do 10 sekund w zależności od danego pomiaru.. W czym może tkwić problem??

    Dodano po 1 [godziny] 45 [minuty]:

    Doszedłem do tego że problem tkwi w tym,że układ zapamiętuje poprzednie próbki z RS232 tak jakby zapisywał je gdzieś do pamięci - nie są to próbki czasu rzeczywistego..
  • #72
    ZiutekH
    Poziom 10  
    Witam,
    Czy ktoś mógłby mi napisać jak wstawić do wykresu pasek przewijania osi X, tak abym mógł wydłużyć oś X.
    Mam dosyć dużo danych i nie chciałbym żeby wykres był zbyt mocno ścieśniony.
    Dzieki.
  • #73
    falkow
    Poziom 11  
    Witam,

    może ktoś pomoże, otóż probuję wykonać wykres danych rzeczywistych (na podstawie przykładu z tego wątku) i mam mały problem

    Kod: vb
    Zaloguj się, aby zobaczyć kod


    Chodzi mi o to że w polu TextBox2 pobieram daną zewnetrzną co 1000ms (bindinding)
    i chciałbym, aby ta dana wyświetlała się jako Integer w TextBox3 a nastepnie chciałbym wrzucić to na wykres.
    Może jakieś wskazówki, dawno nie korzystałem z Basica.

    Pozdrawiam
  • #74
    cepelia
    Poziom 20  
    czytaj dokładnie...

    kawałek
    Kod: vbnet
    Zaloguj się, aby zobaczyć kod


    to po kolei...
    CInt(Int((6 * Rnd()) + 1)) generowanie liczby losowej w zakresie 0 do 6
    gdzie zapisywana jest do zmiennej colValue która to z kolei dodawana jest jako wartość punktu w kolejnym słupku...
    "Chart1.Series("UART").Points.AddXY(colIndex, colValue)"
    kolejna linijka to ustalenie typu wykresu...

    i tyle, więc nie pobierasz żadnej danej do rysowania wykresu, a pusty jest pewnie dlatego że domyślnie seria w kontrolce nazywa się "Series1" a nie "UART" (akurat kolega prosił o pomoc w odczycie z UART i dlatego tak nazwana została seria).

    Reszta wygląda dobrze... choć całości nie widziałem... ja bym akurat bezpośrednio bez textbox'a to bindował ... większy sens by był gdyby zamiast do textbox'a wrzucić wyniki do datagridview bo co niby daje cyferka zmieniająca się w jednym klocku??? co sekundę ...
  • #75
    falkow
    Poziom 11  
    witam,

    dzięki za odpowiedź, ale ja tylko tak dla jasności:
    napisałeś:
    Cytat:
    to po kolei...
    CInt(Int((6 * Rnd()) + 1)) generowanie liczby losowej w zakresie 0 do 6
    gdzie zapisywana jest do zmiennej colValue która to z kolei dodawana jest jako wartość punktu w kolejnym słupku...
    "Chart1.Series("UART").Points.AddXY(colIndex, colValue)"
    kolejna linijka to ustalenie typu wykresu...


    i ja ogólnie to zrozumiałem lecz troche niefortunnie skopiowałem,
    więc w moim listeningu tylko dla przykładu podałem:
    Kod: vb
    Zaloguj się, aby zobaczyć kod


    bo miało być :
    Kod: vb
    Zaloguj się, aby zobaczyć kod


    Cudzysłów źle ustawił się ;)

    nazwa serii została zmieniona na UART ale bez efektu.

    nie wiem właśnie jak to "zbindowac" bezpośrednio...

    pozdrawiam
  • #76
    cepelia
    Poziom 20  
    jutro ci napiszę dzisiaj nie mam już siły...