Was ist die Grafiksoftware, die Punkte zeichnen kann?

Der Einstieg in das Studium von Graphen und Funktionen erfordert eine Menge Graphiken. Also dachte ich daran, ein Dienstprogramm zum Zeichnen von Diagrammen herunterzuladen, aber die Software, die ich heruntergeladen hatte, hatte keine Option, die es uns ermöglichen würde, gezeichnete Punkte zu sehen. Beispiel: Das Beste, was ich finden konnte, war Graph:

Geben Sie hier die Bildbeschreibung ein

Die Dokumentation selbst zur Verwendung von Graphen bietet weniger Informationen. Ich möchte zumindest die gezeichneten Punkte auf der Kurve visualisieren oder Dinge wie Scheitelpunkte und andere wichtige Informationen ohne großen Aufwand durch das Dienstprogramm finden. Gibt es Open-Source-Software, die mir dies ermöglichen würde? Oder ist dies eine Funktionalität, die in der 'Graph' (Software) versteckt ist, von der ich nichts weiß? Ich suche nach einer Windows(7)-Plattform, es wäre besser, wenn die Software Open Source oder Freeware wäre, erwähnen Sie bitte die Anweisungen, wie die oben genannten Funktionen aktiviert werden können.

Möchten Sie Punkte manuell eingeben (Scatterplot-Stil) oder möchten Sie eine Gleichung eingeben und das Programm dazu bringen, Ihnen einige der Punkte der Funktion anzuzeigen?
@AndreaLazzarotto, ja, genau das wollte ich tun (letzteres), das Programm dazu bringen, einige der Punkte der eingegebenen Funktion anzuzeigen. Das Geogebra der akzeptierten Antwort hat mir gefallen, aber ich weiß nicht, wie ich das darin machen soll.
In Ordnung, Antwort bereitgestellt. :)
@AndreaLazzarotto, Tausend Dank, aber es scheint eine Befehlszeilenschnittstelle zu sein, deren Lernen einige Zeit in Anspruch nehmen könnte?
Nicht gerade nur CLI: i.imgur.com/Relr5q1.png

Antworten (3)

IMHO zielen andere Antworten nicht genau auf die Frage ab: Sie konzentrieren sich eher darauf, (großartige) Werkzeuge zum Zeichnen punktbasierter Daten als symbolische Funktionen vorzuschlagen.

Ich möchte zumindest die gezeichneten Punkte auf der Kurve visualisieren oder Dinge wie Scheitelpunkte und andere wichtige Informationen ohne großen Aufwand über das Dienstprogramm finden. Gibt es Open-Source-Software, die mir dies ermöglichen würde?

Ich schlage vor, Sie probieren Sage aus . Von der Webseite:

SageMath ist ein kostenloses Open-Source- Mathematiksoftwaresystem, das unter der GPL lizenziert ist. Es baut auf vielen bestehenden Open-Source-Paketen auf: NumPy , SciPy , matplotlib , Sympy , Maxima , GAP , FLINT , R und viele mehr. Greifen Sie auf ihre kombinierte Leistung über eine gemeinsame, Python-basierte Sprache oder direkt über Schnittstellen oder Wrapper zu.

Mission: Schaffung einer praktikablen kostenlosen Open-Source-Alternative zu Magma, Maple, Mathematica und Matlab .

Sage ist eine der besten Open-Source-Software-Suiten für die Arbeit mit symbolischen Funktionen. Es läuft unter Linux und OS X, aber es gibt keine native Version für Windows. Windows-Benutzer können eine vorgefertigte virtuelle Maschine herunterladen oder die webbasierte Sage Math Cloud verwenden . Basiskonten mit reichlich Hardware-Ressourcen sind kostenlos.

Zeichnen Sie eine symbolische Funktion

Angenommen, Sie möchten plotten:

Beispielformel

Tun:

f(x) = sin(x)*cos(x/pi)
plot(f, (x, -5, 5))

Sie erhalten diese Ausgabe:

Beispiel für die Grundausgabe

Hinweis: Wenn Sie andere symbolische Variablen verwenden möchten, müssen Sie diese zuerst definieren, da only xeingebaut ist. Zum Beispiel:

var('y z a b c d')

Lassen Sie sich von Sage einige Punkte zeigen

Wenn Sie Sage einige Punkte abtasten lassen möchten , können Sie Folgendes tun:

from sage.plot.plot import generate_plot_points

f(x) = sin(x)*cos(x/pi)
g = plot(f, (x, -5, 5))
points = generate_plot_points(f, (x, -5, 5))
h = line(points, markerfacecolor='gray', marker='o', markeredgewidth=0, linestyle="")

g+h

Beispiel für von Sage ausgewählte Punkte

Beachten Sie, dass diese Punkte möglicherweise nicht alle zum Zeichnen des vollständigen Diagramms verwendet werden. Sie können die Tiefe des adaptiven Algorithmus mit ein paar Parametern erhöhen .

Wählen Sie genau die eingezeichneten Punkte aus

Sie können sich auch in das gObjekt hacken, um das erste (und einzige) Primitiv (vom Typ ) zu erhalten Lineund auf die Daten zuzugreifen:

f(x) = sin(x)*cos(x/pi)
g = plot(f, (x, -5, 5))
l = g[0]
points = zip(l.xdata, l.ydata)
h = line(points, markerfacecolor='gray', marker='o', markeredgewidth=0, linestyle="")

g+h

Beispiel aller im Diagramm verwendeten Punkte

Puh, das sind viele Punkte. :D

Entscheiden Sie, wo die Punkte platziert werden sollen

Ein anderer Ansatz besteht darin, die Punkte dort zu platzieren, wo Sie möchten. Beispielsweise möchten Sie vielleicht alle 0,5 Einheiten einen Punkt auf der x-Achse darstellen:

f(x) = sin(x)*cos(x/pi)
g = plot(f, (x, -5, 5))
points = [(x, f(x)) for x in srange(-5, 5.1, 0.5)]
h = line(points, markerfacecolor='gray', marker='o', markeredgewidth=0, linestyle="")

g+h

Punkte in festen Intervallen ausgewählt

Mehr Optionen

Sie können viel schicker werden, indem Sie:

  • sich ändernde Farben, Linienstärke, Markierungstyp und so weiter
  • textFügen Sie jedem Punkt ein Objekt mit Koordinaten hinzu
  • setze yminund ymaxbeschränke den Plot, um Funktionen mit sehr hohen Werten zu zeichnen

Die Möglichkeiten sind endlos.

Sehen Sie sich die folgenden Links an:

Speichern Sie die Handlung

Eine Sache noch. Wenn Sie die Figur speichern möchten, rufen Sie einfach die saveMethode für ein beliebiges Plotobjekt auf.

Zum Beispiel:

g.save("nice.png")
(g+h).save("wonderful.pdf")

Wenn Sie nur mit der grafischen Darstellung herumspielen, können Sie mit Gnuplot nicht viel falsch machen .

  • Kostenlos - Kostenlos & Open Source
  • Klein und tragbar
  • Plattformübergreifend Linux, OS/2, MS Windows, OSX, VMS und viele andere Plattformen
  • interaktive Bildschirmdarstellung: plattformübergreifend (Qt, wxWidgets, x11) oder systemspezifisch (MS Windows, OS/2)
  • direkte Ausgabe in Datei: Postscript (einschließlich eps), pdf, png, gif, jpeg, LaTeX, metafont, emf, svg, ...
  • mausfähige Webanzeigeformate: HTML5, svg
  • So ziemlich jedes Diagramm, das Sie sich vorstellen können, einschließlich Scatter, Histogramm, 3D

Von der Website

set samples 20
set isosamples 21
set xlabel "X axis"
set ylabel "Y axis"
set zlabel "Z " offset 1, 0
set view 60, 30, 0.85, 1.1
set key at screen 1.0, 0.9
set style textbox opaque noborder margins 0.5, 0.5

set title "contour plot"
set contour
splot x*y

Geben Sie hier die Bildbeschreibung ein

Sie können sich auch ansehen:

  • ipython / jupyter + matplotlib , mit dem Sie Diagramme in Python aus einem Browserfenster heraus erstellen , Parameter variieren usw. und eine Dokumentation in Veröffentlichungsqualität erstellen können. Kostenlos, Open Source und plattformübergreifend

Geben Sie hier die Bildbeschreibung ein

  • R / jupyter macht dasselbe für die statistische Programmiersprache R Free, Open Source & Cross Platform

Werfen Sie schließlich einen Blick auf plot.ly , wo Sie Plots auf verschiedene Arten erstellen können (kostenpflichtig für private Plots).

Sie können GeoGebra verwenden :

Geben Sie hier die Bildbeschreibung ein

Es hat eine ähnliche Schnittstelle wie Graph
anstatt Punkte in ein Diagramm einzugeben (in meinem Fall nur 2D), wie machen wir die Punkte in einer eingegebenen Gleichung sichtbar? Zum Beispiel für die Gleichung der geraden Linie: 8x + 3y = 5, könnte einer der Punkte, die die Gleichung erfüllen, sein: (1, -1), wie machen wir solche Punkte auf der Linie im Diagramm sichtbar?