Wichtig

Übersetzen ist eine Gemeinschaftsleistung Sie können mitmachen. Diese Seite ist aktuell zu 49.76% übersetzt.

2.4. Übung: Symbolisierung

Die Symbolisierung eines Layers ist sein Aussehen auf der Karte. Der wichtigste Vorteil gegenüber anderen Methoden zur Darstellung von gegografischen Daten besteht darin, dass Sie mit GIS eine dynamische visuelle Darstellung der Daten haben, mit denen sie arbeiten.

Daher ist die visuelle Darstellung der Karte (die von der Symbolisierung der inidividuellen Layer abhängt) sehr wichtig. Der Anwender, der Ihre Karten benutzt, soll direkt eindeutig sehen, was die Karte zeigt. Ebenso müssen Sie die Daten untersuchen können, während Sie damit arbeiten. Dabei ist die richtige Symbolisierung von großer Bedeutung.

Mit anderen Worten: Eine gute Symbolisierung ist kein Luxus oder nur schmückendes Beiwerk. Sie ist sogar unerlässlich, um ein GIS richtig zu benutzen, Karten zu erstellen und Informationen bereitzustellen, die Menschen nutzen können.

Das Ziel dieser Lektion: Jede beliebige Symbolisierung erstellen und auf jeden beliebigen Vektorlayer anwenden können.

2.4.1. ★☆☆ Mitmachen: Farben ändern

Um die Symbolisierung eines Layers zu ändern, öffnen Sie dessen Layereigenschaften. Beginnen wir mit dem Ändern der Farbe des `` landuse``-Layers.

  1. Klicken Sie mit der rechten Maustaste auf den Layer landuse in der Layerliste.

  2. Wählen Sie den Menüeintrag Eigenschaften… im Kontextmenü aus.

    Bemerkung

    Standardmäßig können Sie die Layereigenschaften auch per Doppelklick auf den Layer in der Layerliste aufrufen.

    Tipp

    Die Schaltfläche symbology am oberen Rand des Bedienfelds Layer öffnet das Bedienfeld Layergestaltungsfenster öffnen. In diesem Fenster können Sie einige Eigenschaften des Layers ändern: Standartmäßig werden Änderungen sofort angewandt.

  3. Wählen Sie im Fenster Layereigenschaften den Tab symbology Symbolisierung:

    ../../../_images/layer_properties_style.png
  4. Klicken Sie auf die Farbauswahl-Schaltfläche neben dem Feld Farbe. Ein Standardfarbdialog wird angezeigt.

  5. Wählen Sie eine graue Farbe aus und bestätigen Sie mit OK.

  6. Drücken Sie im Fenster Layereigenschaften erneut OK, und Sie werden sehen, wie die Farbänderung auf den Layer angewandt wird.

2.4.2. ★☆☆ Probieren Sie es selbst:

Ändern Sie die Farbe des water-Layers auf hellblau. Probieren Sie, das Layergestaltungsfenster anstelle des Layereigenschaften-Fensters zu benutzen.

2.4.3. ★☆☆ Mitmachen: Symbolstruktur verändern

Das ist soweit gut, aber zur Symbolisierung eines Layers gehört mehr als nur ihre Farbe. Als Nächstes wollen wir die Linien zwischen den verschiedenen landuse-Gebieten entfernen, um die Karte optisch übersichtlicher zu machen.

  1. Öffnen Sie das Layereigenschaften-Fenster für den landuse-Layer.

    Im Tab Symbolisierung sehen Sie die gleiche Art von Dialog wie zuvor. Diesmal geht es jedoch um mehr als nur um das Ändern der Farbe.

  2. Wählen Sie im Dropdown-Menü Füllung des Symbollayerbaums die Option Einfache Füllung aus.

  3. Klicken Sie auf das Dropdown-Menü Strichstil. Im Moment sollte eine kurze Linie und die Worte Durchgezogene Linie angezeigt werden.

  4. Ändern Sie dies in Keine Zeile.

    ../../../_images/simple_fill_selected.png
  5. Klicken Sie OK.

Jetzt weist der Layer landuse keine Linien zwischen den Flächen auf.

2.4.4. ★☆☆ Probieren Sie es selbst:

  • Ändern Sie die Symbologie des Wasser-Layers erneut, sodass er einen dunkelblauen Umriss hat.

  • Andern Sie die Symbologie des Flüsse`-Layer’s in eine sinnvolle Darstellung der Wasserwege.

Denken Sie daran: Sie können die Schaltfläche symbology Open the Layer Styling panel verwenden und alle Änderungen sofort sehen. Außerdem können Sie über dieses Bedienfeld auch einzelne Änderungen rückgängig machen, während Sie einen Layer symbolisieren.

2.4.5. ★★☆ Machen Sie mit: Maßstabsabhängige Sichtbarkeit

Manchmal werden Sie feststellen, dass ein Layer für einen bestimmten Maßstab nicht geeignet ist. Beispielsweise kann ein Datensatz aller Kontinente nur wenige Details aufweisen und auf Straßenebene nicht sehr genau sein. In einem solchen Fall möchten Sie wahrscheinlich den Datensatz bei ungeeigneten Maßstäben ausblenden können.

In unserem Fall können wir uns entscheiden, die Gebäude in kleinen Maßstäben auszublenden. Diese Karte zum Beispiel …

../../../_images/buildings_small_scale.png

… ist nicht sehr hilfreich. In diesem Maßstab sind die Gebäude schwer zu unterscheiden.

So aktivieren Sie maßstabsbasiertes Rendering:

  1. Öffnen Sie den Layer-Eigenschaften-Dialog für den Gebäude-Layer.

  2. Aktivieren Sie den rendering Rendering-Tab.

  3. Aktivieren Sie die maßstabsabhängige Darstellung, indem Sie das Kontrollkästchen Maßstabsabhängige Sichtbarkeit :aktivieren.

  4. Ändern Sie den Minimum-Wert zu 1:10000.

    ../../../_images/scale_dependent_visibility.png
  5. Klicken Sie OK.

Testen Sie die Auswirkungen, indem Sie in Ihrer Karte hinein- und herauszoomen und dabei darauf achten, wann der Gebäude-Layer verschwindet und wieder erscheint.

Bemerkung

Sie können das Mausrad verwenden, um stufenweise zu zoomen. Alternativ können Sie die Zoom-Tools verwenden, um auf ein Fenster zu zoomen:

zoomIn zoomOut

2.4.6. ★★☆ Machen Sie mit: Symbol-Layer hinzufügen

Nachdem Sie nun wissen, wie Sie eine einfache Symbologie für Layer ändern, besteht der nächste Schritt darin, komplexere Symbologien zu erstellen. QGIS ermöglicht Ihnen dies mithilfe von Symbol-Layern.

  1. Gehen Sie zurück zu den Landnuzungs-Layer-Eigenschaften indem Sie in der Seitenleiste unter Symbologie auf Einfache Füllung klicken.

    In diesem Beispiel hat das aktuelle Symbol keine Umrisslinie (d. h. es verwendet den Rahmenstil Keine Linie).

    ../../../_images/simple_fill_selected.png
  2. Wählen Sie Füllung und klicken Sie auf die symbologyAdd Symbol-Ebene hinzufügen. Das Dialogfeld ändert sich und sieht ungefähr so ​​aus, wobei eine neue Symbolebene hinzugefügt wurde:

    ../../../_images/new_symbol_layer.png

    Die Farbe mag etwas anders aussehen, aber das werden Sie sowieso ändern..

Jetzt gibt es eine zweite Symbolebene. Da sie eine Volltonfarbe hat, wird sie natürlich die vorherige Symbolart vollständig verbergen. Außerdem hat sie einen Ganze Linie-Stil, den wir nicht wollen. Dieses Symbol muss eindeutig geändert werden.

Bemerkung

Es ist wichtig, einen Kartenlayer nicht mit einer Symbolebene zu verwechseln. Eine Kartenebene ist ein Vektor (oder Raster), der in die Karte geladen wurde. Eine Symbolebene ist Teil des Symbols, das zur Darstellung eines Kartenlayers verwendet wird. In diesem Kurs wird ein Kartenlayer normalerweise nur als Layer bezeichnet, eine Symbolebene wird jedoch immer als Symbolebene bezeichnet, um Verwechslungen vorzubeugen.

Mit der ausgewählten neuen Symbolebene „Einfache Füllung“ :

  1. Stellen Sie den Rahmenstil wie zuvor auf guilabel:Keine Line ein.

  2. Ändern Sie den Füllstil in einen anderen Stil als “ Vollständig or Kein Pinsel. Zum Beispiel:

    ../../../_images/new_fill_settings.png
  3. Klicken Sie OK.

Jetzt können Sie Ihre Ergebnisse sehen und sie nach Bedarf optimieren. Sie können sogar mehrere zusätzliche Symbolebenen hinzufügen und auf diese Weise eine Art Textur für Ihre Ebene erstellen.

../../../_images/multiple_symbol_layers.png

Es macht Spaß! Aber es hat wahrscheinlich zu viele Farben, um es in einer echten Karte zu verwenden …

2.4.7. ★★☆ Probieren Sie es selbst aus:

Denken Sie daran, bei Bedarf hineinzuzoomen, und erstellen Sie mit den oben beschriebenen Methoden eine einfache, aber nicht störende Textur für den Gebäude-Layer.

2.4.8. ★★☆ Machen Sie mit: Symbolebenen anordnen

Beim Rendern von Symbolebenen erfolgt dies ebenfalls in einer Sequenz, ähnlich der Renderung verschiedener Kartenlayern. Dies bedeutet, dass in einigen Fällen das Vorhandensein mehrerer Symbolebenen in einem Symbol zu unerwarteten Ergebnissen führen kann.

  1. Geben Sie dem Straßen-Layer eine zusätzliche Symbolebene (mithilfe der oben gezeigten Methode zum Hinzufügen von Symbolebenen).

  2. Geben Sie der Grundlinie eine Strichstärke of 1.5 und die Farbe Schwarz.

  3. Geben Sie der neuen, obersten Schicht eine Dicke von 0.8 und die Farbe Weiß.

Sie werden feststellen, dass Folgendes passiert:

../../../_images/bad_roads_symbology.png

Nun, Straßen haben jetzt eine straßenähnliche Symbolik, aber Sie sehen, dass sich die Linien an jeder Kreuzung überlappen. Das ist überhaupt nicht das, was wir wollen!

Um dies zu verhindern, können Sie die Symbolebenen sortieren und deren Reihenfolge so ordnen, wie sie gerendert werden.

So ändern Sie die Reihenfolge der Symbolebenen:

  1. Wählen Sie die oberste :guilabel:`Linie`nebene im Linienfenster aus.

  2. Klicken Sie unten rechts im Fenster auf Erweitert ► Symbolebenen….

    ../../../_images/symbol_levels_main_dialog.png

    Dadurch wird ein Dialogfenster wie dieses geöffnet:

    ../../../_images/symbol_levels_dialog.png
  3. Aktivieren Sie checkbox Symbolebenen aktivieren. Anschließend können Sie die Ebenenreihenfolge der einzelnen Symbole festlegen, indem Sie die entsprechende Ebenennummer eingeben. 0 ist die unterste Ebene.

    In our case, we just want to activate the option, like this:

    ../../../_images/correct_symbol_layers.png

    This will render the white line above the thick black line borders:

  4. Click OK twice to return to the map.

    The map will now look like this:

    ../../../_images/better_roads_symbology.png

When you’re done, remember to save the symbol itself so as not to lose your work if you change the symbol again in the future. You can save your current symbol style by clicking the Save Style… button at the bottom of the Layer Properties dialog. We will be using the QGIS QML Style File format.

Save your style in the solution/styles/better_roads.qml folder. You can load a previously saved style at any time by clicking the Load Style… button. Before you change a style, keep in mind that any unsaved style you are replacing will be lost.

2.4.9. ★★☆ Probieren Sie es selbst aus:

Change the appearance of the roads layer again.

Make the roads narrow and yellow, with a thin, pale gray outline and a thin black line in the middle. Remember that you may need to change the layer rendering order via the Advanced ► Symbol levels… dialog.

../../../_images/target_road_symbology.png

2.4.10. ★★★ Try Yourself:

Symbol levels also work for classified layers (i.e., layers having multiple symbols). Since we haven’t covered classification yet, you will work with some rudimentary pre-classified data.

  1. Create a new project and add only the roads dataset.

  2. Apply the style file advanced_levels_demo.qml provided in exercise_data/styles to the layer. This can be done through the Style ► Load Style… combobox at the bottom of the Layer Properties dialog.

  3. Zoom in to the Swellendam area.

  4. Using symbol layers, ensure that the outlines of layers flow into one another as per the image below:

    ../../../_images/correct_advanced_levels.png

2.4.11. ★★☆ Follow Along: Symbol layer types

In addition to setting fill colors and using predefined patterns, you can use different symbol layer types entirely. The only type we’ve been using up to now was the Simple Fill type. The more advanced symbol layer types allow you to customize your symbols even further.

Each type of vector (point, line and polygon) has its own set of symbol layer types. First we will look at the types available for points.

Point Symbol Layer Types

  1. Uncheck all the layers except for places.

  2. Change the symbol properties for the places layer:

    ../../../_images/places_layer_properties.png
  3. You can access the various symbol layer types by selecting the Simple marker layer in the symbol layers tree, then click the Symbol layer type dropdown:

    ../../../_images/marker_type_dropdown.png
  4. Investigate the various options available to you, and choose a symbol with styling you think is appropriate.

  5. If in doubt, use a round Simple marker with a white border and pale green fill, with a Size of 3.00 and a Stroke width of 0.5.

Line Symbol Layer Types

To see the various options available for line data:

  1. Change the Symbol layer type for the roads layer’s topmost symbol layer to Marker line:

    ../../../_images/change_to_marker_line.png
  2. Select the Simple marker layer in the symbol layers tree. Change the symbol properties to match this dialog:

    ../../../_images/simple_marker_line_properties.png
  3. Select the Marker line layer and change the interval to 1.00:

    ../../../_images/marker_line_interval.png
  4. Ensure that the symbol levels are correct (via the Advanced ► Symbol levels dialog we used earlier) before applying the style.

Once you have applied the style, take a look at its results on the map. As you can see, these symbols change direction along with the road but don’t always bend along with it. This is useful for some purposes, but not for others. If you prefer, you can change the symbol layer in question back to the way it was before.

Polygon Symbol Layer Types

To see the various options available for polygon data:

  1. Change the Symbol layer type for the water layer, as before for the other layers.

  2. Investigate what the different options on the list can do.

  3. Choose one of them that you find suitable.

  4. If in doubt, use the Point pattern fill with the following options:

    ../../../_images/pattern_fill_size.png
    ../../../_images/pattern_fill_distances.png
  5. Add a new symbol layer with a normal Simple fill.

  6. Make it the same light blue with a darker blue border.

  7. Move it underneath the point pattern symbol layer with the Move down button:

    ../../../_images/simple_fill_move_down.png

As a result, you have a textured symbol for the water layer, with the added benefit that you can change the size, shape and distance of the individual dots that make up the texture.

2.4.13. ★★★ Follow Along: Geometry generator symbology

You can use the Geometry generator symbology with all layer types (points, lines and polygons). The resulting symbol depends directly on the layer type.

Very briefly, the Geometry generator symbology allows you to run some spatial operations within the symbology itself. For example you can run a real centroid spatial operation on a polygon layer without creating a point layer.

Moreover, you have all the styling options to change the appearance of the resulting symbol.

Let’s give it a try!

  1. Select the water layer.

  2. Click on Simple fill and change the Symbol layer type to Geometry generator.

    ../../../_images/geometry_generator.png
  3. Before to start writing the spatial query we have to choose the Geometry Type in output. In this example we are going to create centroids for each feature, so change the Geometry Type to Point / Multipoint.

  4. Now let’s write the query in the query panel:

    centroid($geometry)
    
    ../../../_images/geometry_generator_query.png
  5. When you click on OK you will see that the water layer is rendered as a point layer! We have just run a spatial operation within the layer symbology itself, isn’t that amazing?

    ../../../_images/geometry_generator_result.png

With the Geometry generator symbology you can really go over the edge of normal symbology.

★★★ Try Yourself:

Geometry generator are just another symbol level. Try to add another Simple fill underneath the Geometry generator one.

Change also the appearance of the Simple marker of the Geometry generator symbology.

The final result should look like this:

../../../_images/geometry_generator_preview.png

2.4.14. ★★★ Follow Along: Creating a Custom SVG Fill

Bemerkung

To do this exercise, you will need to have the free vector editing software Inkscape installed.

  1. Start the Inkscape program. You will see the following interface:

    ../../../_images/inkscape_default.png

    You should find this familiar if you have used other vector image editing programs, like Corel.

    First, we’ll change the canvas to a size appropriate for a small texture.

  2. Click on the menu item File ► Document Properties. This will give you the Document Properties dialog.

  3. Change the Units to px.

  4. Change the Width and Height to 100.

  5. Close the dialog when you are done.

  6. Click on the menu item View ► Zoom ► Page to see the page you are working with.

  7. Select the Circle tool:

    ../../../_images/inkscape_circle_tool.png
  8. Click and drag on the page to draw an ellipse. To make the ellipse turn into a circle, hold the Ctrl button while you’re drawing it.

  9. Right-click on the circle you just created and open its Fill and Stroke options. You can modify its rendering, such as:

    1. Change the Fill color to a somehow pale grey-blue,

    2. Assign to the border a darker color in Stroke paint tab,

    3. And reduce the border thickness under Stroke style tab.

    ../../../_images/inkscape_stroke_fill.png
  10. Draw a line using the Pencil tool:

    1. Click once to start the line. Hold Ctrl to make it snap to increments of 15 degrees.

    2. Move the pointer horizontally and place a point with a simple click.

    3. Click and snap to the vertex of the line and trace a vertical line, ended by a simple click.

    4. Now join the two end vertices.

    5. Change the color and width of the triangle symbol to match the circle’s stroke and move it around as necessary, so that you end up with a symbol like this one:

    ../../../_images/inkscape_final_symbol.png
  11. If the symbol you get satisfies you, then save it as landuse_symbol under the directory that the course is in, under exercise_data/symbols, as SVG file.

In QGIS:

  1. Open the Layer Properties for the landuse layer.

  2. In the symbology Symbology tab, change the symbol structure by changing the Symbol Layer Type to SVG Fill shown below.

  3. Click the button and then Select File… to select your SVG image.

    It’s added to the symbol tree and you can now customize its different characteristics (colors, angle, effects, units…).

    ../../../_images/svg_symbol_settings.png

Once you validate the dialog, features in landuse layer should now be covered by a set of symbols, showing a texture like the one on the following map. If textures are not visible, you may need to zoom in the map canvas or set in the layer properties a bigger Texture width.

../../../_images/svg_symbol_result.png

2.4.15. Zusammengefasst

Changing the symbology for the different layers has transformed a collection of vector files into a legible map. Not only can you see what’s happening, it’s even nice to look at!

2.4.16. Further Reading

Examples of Beautiful Maps

2.4.17. Was als nächstes?

Changing symbols for whole layers is useful, but the information contained within each layer is not yet available to someone reading these maps. What are the streets called? Which administrative regions do certain areas belong to? What are the relative surface areas of the farms? All of this information is still hidden. The next lesson will explain how to represent this data on your map.

Bemerkung

Did you remember to save your map recently?