Grafik aus Excel kitzeln
Günni
- sonstiges
1 Der Martin
0 Günni0 Texter mit x0 Steel
Hallo Forum
Mein Problem kurz beschrieben:
Excel 2007 Tabelle mit drei Spalten: Name, X-Koordinate, Y-Koordinate
Nun will ich Punkte mit den Koordinaten in einer Grafik abbilden (ein Punkt für jeden Datensatz). Die Namen sollen an die Punkte dran geschrieben werden. Eigentlich ja wohl das einfachste was es gibt aber ich schaffs nicht.
Wer kann mir helfen?
Hallo,
Excel 2007 Tabelle mit drei Spalten: Name, X-Koordinate, Y-Koordinate
Nun will ich Punkte mit den Koordinaten in einer Grafik abbilden (ein Punkt für jeden Datensatz). Die Namen sollen an die Punkte dran geschrieben werden. Eigentlich ja wohl das einfachste was es gibt aber ich schaffs nicht.
Diagrammyp: Punkt (XY), wahlweise mit oder ohne Verbindungslinien; Datenbeschriftung aus Spalte 1.
Wer kann mir helfen?
Ich verstehe nicht, warum du an einer -aus meiner Sicht- so einfachen Aufgabe scheiterst. Was genau ist dir unklar?
So long,
Martin
Diagrammyp: Punkt (XY), wahlweise mit oder ohne Verbindungslinien; Datenbeschriftung aus Spalte 1.
Das mit den Punkten bekomme ich hin (indem ich zwei Spalten markiere und daraus ein Punktdiagramm erstelle). Aber wie kann ich diese Punkte über eine dritte Spalte beschriften?
Bei meinen Versuchen werden alle Punkte mit jeweils allen Namen beschriftet.
Günni
Hallo,
Diagrammyp: Punkt (XY), wahlweise mit oder ohne Verbindungslinien; Datenbeschriftung aus Spalte 1.
Das mit den Punkten bekomme ich hin (indem ich zwei Spalten markiere und daraus ein Punktdiagramm erstelle).
da liegt vermutlich der Hase im Pfeffer. Die Spalte mit den Bezeichnungen muss mit dazu.
Aber wie kann ich diese Punkte über eine dritte Spalte beschriften?
Ich habe die Spalte mit den Namen bei der Auswahl des Datenbereichs gleich mitmarkiert, und als Datenbeschriftung dann "Beschriftung anzeigen" gewählt. Es geht aber ebensogut, wenn man erst die beiden Spalten mit den X- und Y-Werten markiert hat (bei mir: =Tabelle1!$B$1:$B$12;Tabelle1!$C$1:$C$12), und den Bereich dann auf Spalte $A erweitert.
Ciao,
Martin
So'n sch...
Meine Tabelle:
a 1 4
b 3 7
c 2 3
Jetzt will ich drei Punkte mit Beschriftung haben, klar.
Raus kommt aber:
http://www.bilder-hochladen.net/files/459o-o-jpg.html
(natürlich ohne die Werbung ;-)
Hallo,
jetzt, wo ich versucht habe, meinen Weg in Bildern darzustellen, ist mir auch mein Fehler aufgefallen: Die Beschriftung stimmt, aber meine Punkte sind in der X-Richtung nicht mehr nach ihrer X-Koordinate (Spalte B) geordnet, sondern einfach nach ihrer Zeilennummer.
Das is' ja ein Sch...
Dann muss ich, so leid es mir tut, wohl auch kleinlaut zugeben: Ich krieg's auch nicht hin. :-(
Vielleicht noch ein Excel-Kenner hier? - Denn die Aufgabenstellung ist ja nicht so abwegig, im Gegenteil, ich finde sie sehr realistisch.
So long,
Martin
Vielleicht noch ein Excel-Kenner hier? - Denn die Aufgabenstellung ist ja nicht so abwegig, im Gegenteil, ich finde sie sehr realistisch.
Aber es müßte jemand in Voraussicht vorgesehen haben. Excel wird für viel mehr eingesetzt als für was es gedacht ist, da wird man immer auf solche Stellen stoßen. In der Geometrie ist es ja üblich einzelne Punkte zu beschriften aber bei Datensätzen in einem Diagramm?
Da gehen ganz andere Sachen nicht, wenn man z.B. nur die Null als Beschriftung an einer Achse stehen haben möchte und sonst keine Zahlen, die x-Achse bei Null liegen soll (*uh - alles so geheim*) aber nicht in der vertikalen Mitte des Diagramms (weil die negativen Werte viel kleiner sind und sonst nur viel Nichts in der unteren Hälfte wäre). Da hilft nur Getrickse mit Mitteln die nicht dafür gedacht sind.
@ Günni, manuell gesetzte Textfelder, was anderes fällt mir auch bei Dir nicht ein.
@ Günni, manuell gesetzte Textfelder, was anderes fällt mir auch bei Dir nicht ein.
Hm, wenn sich die Daten aber ein paar mal in der woche ändern?
@ Günni, manuell gesetzte Textfelder, was anderes fällt mir auch bei Dir nicht ein.
Hm, wenn sich die Daten aber ein paar mal in der woche ändern?
In solchen Fällen erzeuge ich in letzter Zeit "komplizierte" Diagramme von oft veränderlichen Daten mittels eigens geschriebener zugeschnittener Programme* als Grafik. Datensatz ins Verzeichnis kopieren, starten, fertig, lohnt sich.
*Da ist viel immer gleich, es sind drei Arten von Diagrammen.
Es gibt aber auch Programme, deren Hauptaufgabe die Erstellung von Diagrammen ist, vielleicht findest Du was passendes.
Hi,
ich würde vorschlagen:
Excel wegwerfen und Linux installieren, dann geht das sofort, ganz einfach und so weiter.
Cheers, Frank
Hallo Frank,
ich würde vorschlagen:
Excel wegwerfen und Linux installieren, dann geht das sofort, ganz einfach und so weiter.
tut mir leid, wenn das jetzt arrogant rüberkommt, aber so polemische Sprüche klingen danach, als hättest du selbst keine Ahnung (auch wenn ich dem Grundgedanken deiner Aussage zustimmen würde).
Wenn du wenigestens gesagt hättest, "Excel wegwerfen, OpenOffice benutzen", hätte ich dich ernst nehmen können. OpenOffice gibt es übrigens auch für Windows.
Ciao,
Martin
Mensch Martin, kauf dir mal ne (neue) Brille zum Lesen, oder einen neuen Ironiedetektor. Aber du bist schön drauf hereingefallen. ;-)
Nix für Ungut. Ciao, Frank
Hallo,
Meine Tabelle:
a 1 4
b 3 7
c 2 3Jetzt will ich drei Punkte mit Beschriftung haben, klar.
Das wären _drei_ Datenreihen "a", "b" und "c" jeweils mit je _einem_ eigenen x- und _einem_ eigenen y-Wert. Dafür gibt es im Assistenten kein Standarddiagramm.
Erstelle ein beliebiges Punkt-Diagramm aus den Daten.
Rufe dann "Daten auswählen" auf.
Entferne alle vorhandenen Datenreihen.
Wähle per "Hinzufügen" einzeln die Datenreihen:
Reihenname:
=A1 (Zelle mit "a")
Werte der Reihe X:
=B1 (Zelle mit 1)
Werte der Reihe Y:
=C1 (Zelle mit 4)
Reihenname:
=A2 (Zelle mit "b")
Werte der Reihe X:
=B2 (Zelle mit 3)
Werte der Reihe Y:
=C2 (Zelle mit 7)
Reihenname:
=A3 (Zelle mit "c")
Werte der Reihe X:
=B3 (Zelle mit 2)
Werte der Reihe Y:
=C3 (Zelle mit 3)
...
Nun füge bei jedem Punkt die Datenbeschriftung hinzu und formatiere diese wie gewünscht.
viele Grüße
Axel
...
OK, das läuft. Danke erstmal. Was mache ich aber wenn ich so ca. 50 Koordinatenpaare habe? Alle einzeln per Hand? Da brauch ich nen HiWi.
Hallo,
...
OK, das läuft. Danke erstmal. Was mache ich aber wenn ich so ca. 50 Koordinatenpaare habe? Alle einzeln per Hand? Da brauch ich nen HiWi.
... 'nen HiWi oder ein Makro.
viele Grüße
Axel
Hallo,
... 'nen HiWi oder ein Makro.
Sub einzeln_beschriftete_XY_Punkte()
'Vorausgesetzt wird die Markierung von Daten für X-Y-Punkte der folgenden Form:
'
'Punktbeschriftung X-Wert Y-Wert
'Beschriftung 1 100 200
'Beschriftung 2 200 100
'...
'
'Die Überschriften (Punktbeschriftung, X-Wert, Y-Wert) nicht mit markieren.
'
Dim ch As ChartObject
Set ch = ActiveSheet.ChartObjects.Add(100, 30, 400, 250)
With ch.Chart
.ChartType = xlXYScatter
.HasLegend = False
'Verbindungslinie, wenn gewünscht
.SeriesCollection.NewSeries
.SeriesCollection(.SeriesCollection.Count).Name = "Linie"
.SeriesCollection(.SeriesCollection.Count).XValues = "='" & ActiveSheet.Name & "'!" & Selection.Range(Cells(1, 2), Cells(Selection.Rows.Count, 2)).Address
.SeriesCollection(.SeriesCollection.Count).Values = "='" & ActiveSheet.Name & "'!" & Selection.Range(Cells(1, 3), Cells(Selection.Rows.Count, 3)).Address
.SeriesCollection(.SeriesCollection.Count).ChartType = xlXYScatterLines
.SeriesCollection(.SeriesCollection.Count).MarkerStyle = xlMarkerStyleNone
For r = 1 To Selection.Rows.Count
.SeriesCollection.NewSeries
.SeriesCollection(.SeriesCollection.Count).Name = "='" & ActiveSheet.Name & "'!" & Selection.Cells(r, 1).Address
.SeriesCollection(.SeriesCollection.Count).XValues = "='" & ActiveSheet.Name & "'!" & Selection.Cells(r, 2).Address
.SeriesCollection(.SeriesCollection.Count).Values = "='" & ActiveSheet.Name & "'!" & Selection.Cells(r, 3).Address
.SeriesCollection(.SeriesCollection.Count).MarkerStyle = xlMarkerStyleAutomatic
.SeriesCollection(.SeriesCollection.Count).ApplyDataLabels
'Reihenname = Punktbeschriftung
.SeriesCollection(.SeriesCollection.Count).DataLabels.ShowSeriesName = True
'Kategoriename = X-Wert
.SeriesCollection(.SeriesCollection.Count).DataLabels.ShowCategoryName = True
'Wert = Y-Wert
.SeriesCollection(.SeriesCollection.Count).DataLabels.ShowValue = True
.SeriesCollection(.SeriesCollection.Count).DataLabels.Position = xlLabelPositionAbove
.SeriesCollection(.SeriesCollection.Count).DataLabels.Separator = xlDataLabelSeparatorDefault
Next
End With
End Sub
viele Grüße
Axel
Moin Axel.
Wow! hab ich gar nicht mehr mit gerechnet. Vielen Dank, es läuft perfekt für mich!
Du musst bei den Pfadfindern sein (jeden Tag eine gute Tat :-)
Hallo,
Wow! hab ich gar nicht mehr mit gerechnet. Vielen Dank, es läuft perfekt für mich!
Gut. Bitte meine Korrektur beachten.
Du musst bei den Pfadfindern sein (jeden Tag eine gute Tat :-)
Nö, das ist auch für meine Sammlung von VBA für Excel eine gute Ergänzung.
viele Grüße
Axel
Hallo,
... 'nen HiWi oder ein Makro.
Sub einzeln_beschriftete_XY_Punkte()
'Vorausgesetzt wird die Markierung von Daten für X-Y-Punkte der folgenden Form:
'
'Punktbeschriftung X-Wert Y-Wert
'Beschriftung 1 100 200
'Beschriftung 2 200 100
'...
'
'Die Überschriften (Punktbeschriftung, X-Wert, Y-Wert) nicht mit markieren.
'
Dim ch As ChartObject
Set ch = ActiveSheet.ChartObjects.Add(100, 30, 400, 250)
With ch.Chart
.ChartType = xlXYScatter
.HasLegend = False'Verbindungslinie, wenn gewünscht
.SeriesCollection.NewSeries
.SeriesCollection(.SeriesCollection.Count).Name = "Linie"
.SeriesCollection(.SeriesCollection.Count).XValues = "='" & ActiveSheet.Name & "'!" & Selection.Range(Cells(1, 2), Cells(Selection.Rows.Count, 2)).Address
.SeriesCollection(.SeriesCollection.Count).Values = "='" & ActiveSheet.Name & "'!" & Selection.Range(Cells(1, 3), Cells(Selection.Rows.Count, 3)).Address
.SeriesCollection(.SeriesCollection.Count).ChartType = xlXYScatterLines
.SeriesCollection(.SeriesCollection.Count).MarkerStyle = xlMarkerStyleNoneFor r = 1 To Selection.Rows.Count
.SeriesCollection.NewSeries
.SeriesCollection(.SeriesCollection.Count).Name = "='" & ActiveSheet.Name & "'!" & Selection.Cells(r, 1).Address
.SeriesCollection(.SeriesCollection.Count).XValues = "='" & ActiveSheet.Name & "'!" & Selection.Cells(r, 2).Address
.SeriesCollection(.SeriesCollection.Count).Values = "='" & ActiveSheet.Name & "'!" & Selection.Cells(r, 3).Address
.SeriesCollection(.SeriesCollection.Count).MarkerStyle = xlMarkerStyleAutomatic
.SeriesCollection(.SeriesCollection.Count).ApplyDataLabels
'Reihenname = Punktbeschriftung
.SeriesCollection(.SeriesCollection.Count).DataLabels.ShowSeriesName = True
'Kategoriename = X-Wert
.SeriesCollection(.SeriesCollection.Count).DataLabels.ShowCategoryName = True
'Wert = Y-Wert
.SeriesCollection(.SeriesCollection.Count).DataLabels.ShowValue = True
.SeriesCollection(.SeriesCollection.Count).DataLabels.Position = xlLabelPositionAbove
.SeriesCollection(.SeriesCollection.Count).DataLabels.Separator = xlDataLabelSeparatorDefault
Next
End With
End Sub
Kleine Korrektur:
[Series].Name
[Series].XValues
[Series].Values
können direkt Range-Objekte zugewiesen werden. Das müssen keine Texte sein. Die String-concatenation-Akrobatik von oben ist also nicht nötig:
...
.SeriesCollection(.SeriesCollection.Count).XValues = Selection.Range(Cells(1, 2), Cells(Selection.Rows.Count, 2))
.SeriesCollection(.SeriesCollection.Count).Values = Selection.Range(Cells(1, 3), Cells(Selection.Rows.Count, 3))
...
.SeriesCollection(.SeriesCollection.Count).Name = Selection.Cells(r, 1)
.SeriesCollection(.SeriesCollection.Count).XValues = Selection.Cells(r, 2)
.SeriesCollection(.SeriesCollection.Count).Values = Selection.Cells(r, 3)
...
viele Grüße
Axel
Jeder Punkt als Datenreihe? Dann kann er die Punkte aber nicht miteinander verbinden, falls er das will.
Das ist etwa der Punkt an dem er ein Malprogramm für das ganze Diagramm benutzen kann.
Hallo,
Jeder Punkt als Datenreihe? Dann kann er die Punkte aber nicht miteinander verbinden, falls er das will.
Falls er es will, kann er es nicht, das ist korrekt. Es gibt aber nun Mal als Optionen der Datenpunktbeschriftung nur:
Daten_reihen_name
X-Wert
Y-Wert
viele Grüße
Axel
Ich habe die Spalte mit den Namen bei der Auswahl des Datenbereichs gleich mitmarkiert, und als Datenbeschriftung dann "Beschriftung anzeigen" gewählt. Es geht aber ebensogut, wenn man erst die beiden Spalten mit den X- und Y-Werten markiert hat (bei mir: =Tabelle1!$B$1:$B$12;Tabelle1!$C$1:$C$12), und den Bereich dann auf Spalte $A erweitert.
Und dannach hast Du nicht einen Datenreihe mehr und das eigentliche Ziel nicht erreicht? Welche Excelversion?
Ich verstehe nicht, warum du an einer -aus meiner Sicht- so einfachen Aufgabe scheiterst. Was genau ist dir unklar?
Als ich "damals" mitbekommen habe, daß man bei Excel Datenpunkte beschriften kann, habe ich mich gefragt wozu das gut sein soll (ich habe dafür offenbar nie mit wenig genug Daten zu tun gehabt). Insofern wäre ich vermutlich nicht auf die Idee gekommen daß es diese Möglichkeit gibt.
Hoi!
Excel 2007 Tabelle mit drei Spalten: Name, X-Koordinate, Y-Koordinate
Nun will ich Punkte mit den Koordinaten in einer Grafik abbilden (ein Punkt für jeden Datensatz). Die Namen sollen an die Punkte dran geschrieben werden. Eigentlich ja wohl das einfachste was es gibt aber ich schaffs nicht.Diagrammyp: Punkt (XY), wahlweise mit oder ohne Verbindungslinien; Datenbeschriftung aus Spalte 1.
Echt Jetzt? Ich hab mal folgendes eingegeben:
Wert X Y
Eins 0.5 1
Zwei 1 2
Drei 1.5 3
Vier 2 4
Fuenf 2.5 5
Wenn ich damit ein XY Diagramm erstelle bekomme ich 2 Linien in einem 6x6 Koordinatensystem. Die Obere liegt auf Koordinaten 1,1 2,2 3,3 4,4 5,5 und die untere auf den Koordinaten 0.5,1 1,2 1.5,3 2,4 2.5,5. Die Angeben unter Wert sind nciht zu sehen. Die Untere Linie ist wohl, was anhand der Daten dargestellt werden soll, aber wohl eher zufaellig, weil Excel einfach 5 Eintraege sieht, was zu den Y Koordinaten passt.
Wer kann mir helfen?
Ich verstehe nicht, warum du an einer -aus meiner Sicht- so einfachen Aufgabe scheiterst. Was genau ist dir unklar?
Ich muss ehrlich gestehen, dass ich mit der gegebenen Ausgangssituation nichtmal die gewuenschte Linie hinbkommen habe. Es waren immer zwei. Von den Werten an den Punkten mal ganz ab... Keine Ahnung ob Excel 2003 das einfach nicht kann, ich zu doof bin, oder ob man da irgendeine Einstellung machen kann. Googlen tu ich mir dafuer jetzt nicht extra an. Ist ja nicht mein Problem.
Wenn Excel sich nicht anders zu helfen weiß, gibt es auch bei xy-Diagrammen den Daten den x-Wert, der der Stelle im Datensatz entspricht. Ich habe den Verdacht Der Martin ist dem aufgessesen. Ich benutze deshalb beim Testen niemals eine durchgehende Reihe ganzer Zahlen ab 1.
Hallo,
Wenn Excel sich nicht anders zu helfen weiß, gibt es auch bei xy-Diagrammen den Daten den x-Wert, der der Stelle im Datensatz entspricht. Ich habe den Verdacht Der Martin ist dem aufgessesen.
ja, ist er.
Ich benutze deshalb beim Testen niemals eine durchgehende Reihe ganzer Zahlen ab 1.
Ich auch nicht. Als Namen (Spalte A) hatte ich "alpha", "beta", "gamma", ... und als X- und Y-Werte (Spalte B und C) willkürlich eingetragene, quasi-zufällige Zahlen zwischen 0 und 20.
Trotzdem (oder vielleicht gerade wegen der zufälligen Zahlen) ist mir der Fehler nicht gleich aufgefallen.
Ciao,
Martin