Graphen zeichnen
-
Es gibt ne Komponente TChart, die ist zum zeichnen von Funktionen oder sonstigen Diagrammen recht nützlich, vorallem wenn du noch Zoom Funktionen benötigst.
-
Ich habe auch mal intensiv nach entsprechenden Komponenten gesucht. So was in der Art wie die Graphen im MS PowerToy Calc. Habe aber nichts gefunden und musste das ganze dann zu Fuß machen, wie es akari beschrieben hat.
Die TChart-Komponente ist leider meißt nicht mächtig genug. Über die x-Achse werden hier immer die Indizes der Daten auf der y-Achse aufgetragen. Du kannst aber keine Wertepaare (Wert A auf die x-Achse, zugehöriger Wert B auf die y-Achse) eintragen.
-
Hallo,
@chris_f
Natürlich kann TChart Wertepaare verwenden und nicht nur Indizes.
Z.Bsp. für ein TLineSeries;chart->Series[0]->AddXY(x, y, "", clTeeColor);
-
@braunstein
So mal ein Test auf die Schnelle:Chart1->Series[0]->AddXY(5, 2, "", clTeeColor); Chart1->Series[0]->AddXY(7, 5, "", clTeeColor); Chart1->Series[0]->AddXY(2, 4, "", clTeeColor); Chart1->Series[0]->AddXY(5, 7, "", clTeeColor); Chart1->Series[0]->AddXY(9, 1, "", clTeeColor);Dabei sortiert er die Werte aber in aufsteigender x-Richtung.
Das ist nicht immer gewünscht.Aber wie gesagt, hab nur noch mal kurz reingeschaut, ohne wirklich damit zu experiementieren. Evtl. geht da doch was.
@apokalyse: Mußt Du halt mal mit rumspielen. Werde ich bei Gelegenheit auch nochmal machen.
-
Die Sortierreihenfolge kann festgelegt werden. Bei normalen Funktionen ist eine Sortierung nach den x-Werten eigentlich erwünscht und somit default.
Zum ÄndernChart1->Series[0]->XValues->Order = loNone; // keine Ordnung Chart1->Series[0]->XValues->Order = loAscending; // aufsteigend (default) Chart1->Series[0]->XValues->Order = loDescending; // absteigendWas hat die Sortierung eigentlich mit den angeblich nicht funktionierenden Wertepaaren zu tun?
-
Ja, OK, OK, hast ja recht.
Ich hab das damals nicht gespannt und ist auch schon ne zeitlang her.
-
okay..., ich danke euch schonmal für eure Beiträge. Nun da ich weiß, dass das geht, kann ich ja mal darauf hinarbeiten so ein Programm zu machen, aber erstmal muss ich ein paar andere Übungen machen...

MfG René
-
Also..., ich habe nun nochmal bei Google usw. nach den TCharts gesucht. Ich habe in meinem BCB mal gesucht und ich habe das nicht gefunden. Bei mir sind folgende Dinge da, die ich auf ein Formular machen kann:
Standard
Frames, MainMenu, PopUpMenu, Label, Edit, Memo, Button, CheckBox, RadioButton, ListBox, ComboBox, ScrollBar, GroupBox, RadioGroup, Panel, ActionList
Zusätzlich
BitBtn, SpeedButton, MaskEdit, StringGrid, DrawGrid, Images, Shape, Bevel, ScrollBox, CheckListBox, Splitter, StaticText, ControlBar, ApplicationEvents, ValueListBox, LabeledEdit, ColorBox
Win32
TabControl, PageControl, ImageList, RichEdit, TrackBar, ProgressBar, UpDown, HotKey, Animate, DateTimePicker, MonthCalendar, TreeView, ListView, HeaderControl, StatusBar, ToolBar, CoolBar, PageScroller, ComboBoxEx
System
Timer, PaintBox, MediaPlayer, OleContainer, DdeClientConv, DdeClientItem, DdeServerConv, DdeServerItem
Internet
ClientSocket, ServerSocket
Dialoge
OpenDialog, SaveDialog, OpenPictureDialog, SavePictureDialog, FontDialog, ColorDialog, PrintDialog, PrinterSetupDialog, FindDialog, ReplaceDialog
Win 3.1
TabSet, Outline, TabbedNotebook. Notebook, Header, FileListBox, DirectoryListBox, DriveComboBox, FilterComboBox
Beispiele
TrayIcon, PerformanceGraph, CSpinButton, CSpinEdit, CColorGrid, CGauge, DirectoryOutline, CCalendar, Pie
ActiveX
Chartfx, VSSpell, F1Book, VtChart
Das sind alle Elemente. Welche könnte ich noch verwenden und da schon einige genannt wurden, wäre es nett, wenn noch jemand mal eine kleine Beschreibung posten kann, wie ich das dann so machen kann, dass z.B. eine Funktion gezeichnet wird.
Danke schonmal...
MfG René
-
dann guck dir doch mal chartfx an!
-
ich hab zwar den BCB 6 auf englisch aba ich finde das TChart. guck mal unter Additional (Zusätzliches) und dann das 5. letzte. das müsste so en kreisdiagramm sein als bildchen

-
Der hat jetzt bestimmt mehr als ein halbes Jahr lang jeden Tag nach diesem TChart geschaut.
