Hallo zusammen,
ich danke Euch allen, daß Ihr Euch meines Problems annehmt!
Zur Tabellen-BEZIEHUNG (Relation): es scheint ab Version 1.8 etwas neues zu
geben, wenn ich den allerletzen Absatz dieses Dokuments richtig verstehe:
http://gis.uster.ch/dokumentation/publikationen/qgis-2011-was-gibt-es-neues-geomatik-schweiz-artikel/view
(@ Andreas: stammt das Dokument evtl. von Dir?)
Zu PostgreSQL: ich würde liebend gerne damit arbeiten, wenn ich nur
wüßte, wie! Ich wüßte gern, wie ich sowas anlege, verwalte, auswerte.
Muß ich dazu einen (Internet-)Server betreiben, oder kann ich sowas
auch "auf Festplatte" ablegen (wie z.B. MS-Access)? Wie kriege ich
das PostGIS "da drauf"? Kann ich vorhande Shapes einfach umwandeln?
Was ist mit Raster-Daten? Und, und, und...
Gibt es eine leicht verständliche Schritt-für-Schritt
Anleitung (auf deutsch)?
Grüße sendet Lars
-----Ursprüngliche Nachricht-----
Gesendet: Freitag, 30 März 2012 um 08:57:16 Uhr
Von: "Andreas Neumann" <***@carto.net>
An: fossgis-talk-***@fossgis.de
Betreff: Re: [FOSSGIS-Talk] QGIS - kniffliges Beschriftungsproblem
Hallo,
Mit PostgreSQL wäre das kein Problem.
Man macht entweder:
a) einen Join und dann ein GROUP BY oder
b) einen Subquery der alles in einen String zusammenfasst.
Zum aggregieren kann man die aggregate Funktionen array_agg() oder
string_agg() nehmen:
http://www.postgresql.org/docs/current/static/functions-aggregate.html
Ich mache das in Uster z.b. um alle Eigentümer und Adressen einer
Parzelle zu aggregieren. Das funktioniert gut.
Grüsse,
Andreas
Post by b***@jena.deHallo Lars,
ich arbeite eigentlich ausschliesslich mit PostgreSQL/PostGIS, des
kann ich Dir zu OO keinen Tip geben, sondern nur sagen, wie das in
PostgreSQL gehen würde. Ich schliesse mich Lars Lingner an: Besteht
die Möglichkeit eine DB zu nutzen?
Das mit dem Laden als Vektorlayer wusste ich nicht (weil kein
dateibasiertes Arbeiten :)
QGIS 1.7 kann nur _ein_ Feld zur Beschriftung heranziehen, die
dev-Version erlaubt komplexe Ausdrücke zur Beschriftung (also auch
mehrere Felder).
Ich denke das von Dir beschriebene Verhalten der 1:n Beziehung
(Auswahlverhalten) ist nicht besonders schwer zu realisieren, von da
ist es aber ein weiter Weg zur Beschriftung, denn die Beschriftung
kann nur auf Felder der Tabelle des Layers erfolgen, nicht auf Felder
in anderen Tabellen. Durch die 1:1 - Verknüpfung werden Felder einer
anderen Tabelle quasi zum Bestandteil der entsprechenden Layer, darum
geht das hier.
Post by d***@web.deHallo Bernhard,
danke für die Tips.
Das Wort "Pivottabelle" habe ich das letzte Mal vor ca. 15 Jahren
gehört... Mit Excel kann man damit Auswertungen aufgrund
verschiedener
Parameter machen. Jedoch ist es mir nicht gelungen, auf Basis der
eindeutigen Hausnummer, die Namen transponiert in die gleiche Zeile
hintereinander zu schreiben... Wie läuft denn sowas mit OpenOffice?
Ich habe zwischenzeitlich entdeckt, daß man in QGIS geometrielose
Tabellen (csv) einladen kann: Add Vector Layer - Dateityp "csv". Für
ein
Join würde das also gehen (wenn ich denn diese Pivot-Sache
hinkriegen
würde...).
Jedoch, glaube ich, daß man keine VERKNÜPFUNG (1:1) sondern eine
BEZIEHUNG (1:n) zwischen beiden Tabellen herstellen muß. Ich kenne
sowas
noch aus alten ESRI ArcInfo Zeiten. Wahrscheinlich müßte in QGIS
dafür
ein Plugin geschrieben werden, sofern es nicht schon eins gibt, das
ich
nicht finde...
BEZIEHUNG heißt, daß die Attributtabelle meines Häuser-Shape-Layers
so
bleibt, wie sie ist. Die geometrielose Tabelle wird in das Projekt
hinzugeladen. Wenn man nun eine Beziehung aufgrund einer eindeutigen
Spalte (hier: Hausnummer) zwischen beiden herstellt, dann kann man
z.B.
die Haus-Nr. 1 des Shape-Files markieren und in der Namen-Tabelle
werden
alle Zeilen mit der gleichen Hausnummer ebenfalls markiert. Und
umgekehrt kann man einen Namen in der Tabelle markieren und QGIS
markiert das entsprechende Shape-Objekt.
Wenn man es schafft, solche Beziehungen in QGIS herzustellen, dann
dürfte es (meiner laienhaften Meinung nach) nicht mehr so schwer
sein,
die Beschriftung der Shape-Objekte anhand einer auszuwählenden
Spalte
(z.B. Name oder Vorname) der geometrielosen Tabelle ausführen zu
lassen,
so daß alle zur Hausnummer 1 in Spalte "Name" gehörenden Namen
ausgegeben werden.
Was sagen die Experten dazu?
Grüße sendet Lars
Post by b***@jena.deHallo,
QGIS kann keine 1:n Joins (wie sollte das auch gehen? dann müssten
ja
die Polygone verfielfacht werden). Du mußt Deine Exceltabelle also
so
umstrukturieren, dass Du einen 1:1 Join machen kannst.
eine
Pivottabelle machen (ich kenne Excel nicht, vermute aber mal, dass
das
darin geht, d.h. Spalte1 = hnr, spalte2 = Name1, spalte3 = Name2
usw.)
Einladen kannst Du nur csv-Tabellen, Du musst das Ergebnis also als
csv abspeichern. Ich glaube, dass Du auch eine x und eine y-Spalte
anlegen mußt, kannst Du irgendwas reinschreiben, denn QGIS lädt,
soweit ich weiss, keine geometrielosen Tabellen von csv. Dann alles
als Shapedatei abspeichern, ein neues Feld anlegen "Beschriftung"
und
mit dem Feldrechner name1 || ' ' || name2 usw. darin eintragen.
viel Erfolg
Bernhard
Post by d***@web.deHallo zusammen,
ich habe in QGIS ein Polygon-Shape mit 10 Grundflächen von
Mehrfamilienhäusern einer Straße. Jedes Mehrfamilienhaus hat als
Attributwert eine eindeutige Hausnummer (1 bis 10). Und ich habe
eine
geometrielose Tabelle (Excel) mit 50 Namen. Zu jedem Namen gibt es
die
Hausnummer (1 bis 10), in der diese Person wohnt. In allen Häusern
wohnen unterschiedliche Mengen von Namen, mal 3, mal 5, mal 8 usw.
Ziel ist, die Polygone mit genau den Namen zu beschriften, die in
den
jeweiligen Hausnummern wohnen. Das bedeutet, daß jedes Haus
unterschiedliche Anzahlen von Namen beinhaltet.
Wer hat eine Idee, wie ich
1. eine geometrielose Tabelle in QGIS einladen kann,
2. eine Verknüpfung zwischen dem Shape (mit 10 Objekten) und der
Namentabelle (mit 50 Objekten) herstellen kann,
3. die Shapes entsprechend beschriften kann.
Danke für Eure Hinweise im Voraus!
Grüße sendet Lars
_______________________________________________
FOSSGIS-Talk-Liste mailing list
https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste
________ Information from NOD32 ________
This message was checked by NOD32 Antivirus System for Linux Mail
Server.
http://www.nod32.com
________ Information from NOD32 ________
This message was checked by NOD32 Antivirus System for Linux Mail
Server.
http://www.nod32.com
________ Information from NOD32 ________
This message was checked by NOD32 Antivirus System for Linux Mail
Server.
http://www.nod32.com
________ Information from NOD32 ________
This message was checked by NOD32 Antivirus System for Linux Mail
Server.
http://www.nod32.com
_______________________________________________
FOSSGIS-Talk-Liste mailing list
https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste
--
--
Andreas Neumann
Böschacherstrasse 10A
8624 Grüt (Gossau ZH)
Switzerland
_______________________________________________
FOSSGIS-Talk-Liste mailing list
FOSSGIS-Talk-***@fossgis.de
https://lists.fossgis.de/mailman/listinfo/fossgis-talk-liste
___________________________________________________________
Ihr WEB.DE Postfach immer dabei: die kostenlose WEB.DE Mail App für iPhone und Android.
https://produkte.web.de/freemail_mobile_startseite/