Tutorial: Plotting projected electronic band structures with solid color and value-scaled width/size

In this tutorial for SrTiO3, we show how to upload the results of your DFT band-structure files to DFT Hub, select projections, and generate, customize, and export a projected band structure using solid color and value-scaled width/size.

Upload the electronic band structure files #

The first step is to upload the required files from your DFT simulation. The upload panel indicates which files can be provided. Not all files are mandatory; however, the file that contains the band information is essential (for example, PROCAR is required for a VASP simulation). In this section, you are also asked to provide the Fermi energy. If the Fermi energy is given, the plot will automatically shift the energies so that the Fermi level is set to zero.

Screenshot of the upload panel indicating the required band-structure files

After selecting the files you can proceed by clicking on the Parse button.

Review generated EBS report cards #

After parsing, the page generates report cards that summarize key results. You can expect values such as bandgap, material type, Fermi value, lattice parameters, angles, volume, and density. If the simulation is spin-polarized and the bandgaps differ between channels, the reports include values for each spin channel.

If you want this report in different units, use the Units panel in the right sidebar.

Electronic report card generated for spin-polarized EBS
Lattice report card generated for spin-polarized EBS

Step 2: Limits #

Limits

You can generate a baseline figure by clicking Plot, then refine the view using Limits in the right sidebar. In this example, use y-limits from -5 eV to 10 eV.

You can also set x-limits by high-symmetry-point index: instead of exact k values, provide integers for the starting and ending high-symmetry points.

Limits panel for selecting x and y ranges

Use the zoom sliders to focus on specific energy and k-point ranges. Drag slider handles to zoom in or out, and move the selected window to inspect different parts of the band structure.

Zoom slider controls for projected bands

Step 3: Add filters and choose solid color + value-scaled width/size #

Click Add Filter to create a filter card. The app automatically enables Plot filtered bands and disables Plot plain bands; you can re-enable plain bands if you want overlays.

Add filter action for projected bands

Each filter card is an independent projected-band trace. After adding a filter, select the ion, orbital, and (if applicable) spin entries in the projection table for exactly the contribution you want to visualize. You can stack multiple filters to compare different chemical or orbital channels in the same plot.

In each filter card, set coloring mode to Solid color and choose a distinct color for that contribution. Then enable Value-scaled width/size in the Line/Marker panel so projection strength is encoded by line and marker thickness: stronger weights are drawn thicker, weaker weights are drawn thinner.

In the Coloring panel, Opacity sets transparency for the full filter trace (0 = fully transparent, 1 = fully opaque), which is useful when several filters overlap. Use Plot Order to control stacking: filters with higher values are drawn on top of lower values, while auto keeps the default app ordering.

For meaningful comparisons across multiple filters, keep key style scales consistent across cards, especially line width and marker size. If one filter uses a much larger base size than another, visual differences can come from styling rather than the actual projection weights.

After defining filters, click Plot to render the projected bands. If needed, refine line style, marker type, opacity, and labels in each card before plotting again.

Filter coloring panel with solid-color mode selected
Filter line and marker panel showing line style, width, marker type, and marker size

Step 4: Example filter choices for SrTiO3 #

In this example, we use four filters: one for Sr, two for Ti, and one for O. Keep line width and marker size settings consistent across filters for a fair visual comparison.

Example selections: Sr in red; Ti t2g (dxy, dyz, dxz) in blue; Ti eg (dz2, dx2-y2) in cyan; and O in magenta.

Legend labels can be entered manually, or you can leave them blank and use auto-generated labels based on the selected ions/orbitals.

Projection table with species-based grouping

After adjusting the selected filters click on plot to generate the projected electronic band structure.

Projected solid-color band structure for SrTiO3

Step 5: Show and tune the legend #

Legend labels are automatically generated from each filter selection. If you want a custom label, use the legend panel inside that filter card. In the same per-filter legend panel, you can also adjust label styling such as color, weight, and style.

The global Legend panel in the right sidebar controls figure-level legend behavior. Use it to show/hide the legend, choose from preset positions (for example Upper Right, Upper Center, Center, and Lower Left), or switch to Custom to manually place the legend. When Custom is selected, Loc. X and Loc. Y are activated, and both fields are prefilled with the latest automatically generated values. You can also tune layout (Orientation, item Length/Width, marker count/size, and Gap). The same panel also includes style controls such as legend background, font size, plot order, and border settings (color, width, and radius). In these settings, we used Radius = 2 to give the legend border slightly curved corners.

Per-filter legend panel for setting label text and label style
Global legend panel in the right sidebar for position and border settings

During analysis, you can hide or unhide individual filters by clicking their items in the legend. There is still a small unhide timing bug from the underlying ECharts source code, which we plan to fix in a future update. If unhide does not refresh immediately, hover your mouse in and out of the plot area and over the legend, then give it a moment and the legend state will update.

Animated demo of clicking legend items to hide and unhide filters

Step 6: Customization and styling #

For axis, legend, font, colors, and other appearance controls, use the right sidebar and see the full settings reference in Plot Settings.

Step 7: Export the figure #

When your figure is ready, click the download button in the chart toolbar to export it. Use this to save a clean image for reports, slides, or publications.

Download button used to export the figure