Gibt es eine Methode, mit der die Farbe eines Etiketts automatisch mit der Farbe des Polygons übereinstimmt, das auf der Registerkarte "Symbologie" angegeben ist?


12

Mein Job erfordert, dass ich jeden Tag mehrere Druckkarten für eine Vielzahl unterschiedlicher Benutzer produziere. Es ist normalerweise ziemlich einfach, aber manchmal muss ich eine Karte erstellen, die verwirrende / überlappende Daten für Personen verwendet, die mit dem Thema nicht vertraut sind.

Gibt es eine Methode, mit der die Farbe eines Etiketts automatisch mit der Farbe des Polygons übereinstimmt, das auf der Registerkarte "Symbologie" angegeben ist? Mir ist klar, dass ich " Feature-Klassen definieren und jede Klasse anders beschriften " und " Symbolklassen abrufen" auswählen kann der Registerkarte "Beschriftungen" die Optionen " " , muss jedoch die CMYK-Werte für jede Symbolklasse manuell eingeben, da jede Beschriftung automatisch auf "Schwarz" gesetzt wird .

Wenn es eine Methode zum automatischen Einstellen der Farbe gäbe, wäre meine Arbeit viel weniger mühsam.


Was wäre, wenn Sie Ihre Beschriftungsklassen und Symbologie entwickelt, als Layer-Dateien gespeichert und dann nach Bedarf geladen hätten? Würde das helfen?
Jakub Sisak GeoGraphics

Eine kleine Problemumgehung wäre, auf der Registerkarte "Symbologie" die Option "Verlaufsfarben" zu verwenden, die Anzahl der Klassen festzulegen und dann auf der Registerkarte "Symbologie" unter "Feature-Klassen definieren und jede Klasse anders beschriften" eine SQL-Abfrage durchzuführen und die Farbe festzulegen für die Etiketten in jeder Klasse, um mit dem im Klassifizierungsbereich angegebenen Bereich übereinzustimmen. Der Datensatz, den ich verwende, ändert sich jedoch häufig, und es wäre sehr hilfreich, wenn nur die Farbe des Etiketts mit der Farbe des Features übereinstimmt.
Adam Thom

Haben Sie Glück, eine automatische Lösung zu finden? Ich muss dasselbe für hundert Punkte tun
Michele Cordini,

Unglücklicherweise nicht.
Adam Thom

Antworten:


2

Wahrscheinlich nicht die Antwort, nach der Sie suchen, und ich weiß nicht, ob ArcPy tatsächlich etwas enthält, mit dem Sie möglicherweise mit solchen Beschriftungs- und Symbologieeigenschaften arbeiten können, obwohl ich persönlich nichts davon weiß. Was die Zeitersparnis anbelangt, wären einige Dinge: Wenn Sie in Ihrer Symbologie konsistente Farbverläufe oder konsistente Farben verwenden, können Sie diese Farben tatsächlich als benutzerdefinierte Farben speichern, wenn Sie eine Farbe auswählen, anstatt einzelne RGB-Farben einzugeben oder CMYK-Werte können Sie einfach in der Dropdown-Liste auf Ihre Farbe klicken. Sie können dasselbe auch mit Beschriftungsstilen tun. Sie können Standardbeschriftungsstile (Farbe, Schriftart, Größe, Lichthof, Abstand usw.) einrichten und diese speichern, anstatt auf die Eigenschaften des Beschriftungsstils für zu klicken jede Beschriftungsklasse und dann manuell jede bestimmte Eigenschaft festlegen, Wählen Sie einfach Ihren benutzerdefinierten Etikettenstil aus. In beiden Fällen sollten Sie in der Lage sein, in den entsprechenden Dialogfeldern zu klicken und eine Schaltfläche zum Speichern zu finden. Wenn nicht, lassen Sie es mich wissen und ich werde versuchen, zu beschreiben, wo sie sich befinden.

Auch wenn Sie den Eindruck erwecken, dass Sie möglicherweise jeden Tag die gleichen Arten von Datensätzen erhalten, nur mit den Werten dieses Tages, aber im Allgemeinen handelt es sich um dasselbe Schema, dieselben Domänen, denselben Bereich möglicher Werte. etc ... Ich habe keine Ahnung, ob dies zutrifft, aber wenn es zutrifft, können Sie auch festlegen, dass Sie immer irgendwann Datensätze im Wert von mehreren Tagen (Zusammenführungswerkzeug oder ähnliches) aggregieren, um einen Datensatz mit demselben zu erhalten Schema als Dataset, das Sie normalerweise zuordnen, das jedoch alle möglichen Werte enthält, die in Ihrem Symbolklassenfeld auftreten können. Anschließend richten Sie dies mit Symbol- und Beschriftungsklassen in ArcMap ein und speichern die Layer-Datei. Jedes Mal, wenn Sie neu aktualisierte Daten für diesen Datensatz erhalten, fügen Sie einfach die von Ihnen gespeicherte Layer-Datei hinzu. Gehen Sie zur Registerkarte "Quelle" und ändern Sie die Quelle in das neue Dataset (aktuelle Daten) desselben Schemas. Dort sollte es funktionieren, wenn Ihre Vorlagenebenendatei korrekt vorbereitet wurde (stellen Sie sicher, dass alle anderen Optionen angezeigt werden.) falls Sie einige mögliche Werte verpasst haben). Ich hoffe das macht Sinn, aber wenn nicht, lass es mich wissen und ich versuche es zu klären.

Nochmals, tut mir leid, dass ich nicht die perfekte Antwort habe, aber ich hoffe, es hilft zumindest ein bisschen.


Sie haben einige großartige Ideen, aber da mehrere Dutzend verschiedene Polygone gleichzeitig auf dem Bildschirm angezeigt werden können, ist es hilfreich, auf der Registerkarte „Symbologie“ auf „Farbverlauf“ zu klicken, „Pastelle“ auszuwählen und die Farben der Beschriftungen auf irgendeine Weise mit den Polygonen abzustimmen .
Adam Thom

1
Eine andere Sache, die zumindest ein bisschen helfen kann, ist, dass es in ArcGIS tatsächlich ein Tool namens "Eye Dropper" gibt, das meines Wissens standardmäßig ausgeblendet ist Bereich und scrollen Sie nach unten zu Anpassen. Von dort aus können Sie auf die Registerkarte "Befehle" klicken und nach "Pipette" suchen und diese dann per Drag & Drop auf eine vorhandene oder neue Symbolleiste ziehen (oder ihr über die Schaltfläche "Tastatur" einen Hotkey zuweisen). Anschließend können Sie mit diesem Tool auf eine beliebige Stelle auf dem Desktop klicken, um diese Farbe zu speichern. Auch hier ist es nicht perfekt, kann aber einigen helfen ...
John

Ich bin ein großer Fan von Eye Dropper und habe es bei vielen, vielen Gelegenheiten verwendet, aber es ist wahrscheinlich nicht die beste Antwort für dieses Beispiel.
Adam Thom

0

Ich hatte mit einer ähnlichen Situation zu kämpfen. Ich googelte "arcgis labels conditional colouring" und stolperte über einige interessante Antworten.

Sie führen die Funktion in der Beschriftungsoption des Polygons aus. Wechseln zu erweiterten Funktionen und Verwenden von VB zum bedingten Festlegen basierend auf einem Wert in einer Spalte der zugeordneten Tabellenattribute.

Am einfachsten ist es, eine Spalte zu erstellen, die die Ergebnisse einer Abfrage für die Tabelle erhält und diese Ergebnisse dann in Ihren bedingten Formatierungsanweisungen verwendet.

Einmal verstanden, sehr mächtig und sehr einfach.

=============

Beispiele: http://www.esri.com/news/arcuser/1104/files/vbscript_label.pdf (Seite 4)

http://forums.arcgis.com/threads/24786-Label-Colors-depending-on-their-value (Antwort # 26)

===============

Ich hoffe, diese führen Sie in eine Richtung, die am erhofften Ziel ankommt.


Ich fand es tatsächlich viel einfacher, Feature-Classes zu definieren, eine SQL-Abfrage anzuwenden und die Beschriftungswerte manuell festzulegen, als einen Beschriftungsausdruck zu verwenden. Das Feld, in das Sie den Ausdruck schreiben, kann nicht in der Größe geändert werden, und ein komplizierter Ausdruck kann schwierig zu bearbeiten sein.
Adam Thom
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.