Difference between revisions of "Plotting and visualization tools"

From Wiki Max
Jump to navigation Jump to search
Line 76: Line 76:
 
Xcrysden is a useful program for viewing input and output files from quantum espresso (and others).
 
Xcrysden is a useful program for viewing input and output files from quantum espresso (and others).
  
$> xcrysden --help
+
$> xcrysden --help
$> xcrysden --pwi Si-bulk.in
+
$> xcrysden --pwi Si-bulk.in
$> xcrysden --pwo Si-bulk.out $ xcrysden --xsf charge.xsf
+
$> xcrysden --pwo Si-bulk.out $ xcrysden --xsf charge.xsf
  
 
Standard “Angstrom” format:
 
Standard “Angstrom” format:
  
$> xcrysden --xyz molecule.xyz
+
$> xcrysden --xyz molecule.xyz
  
  
  
 
Documentation can be found at [http://www.xcrysden.org xcrysden] website
 
Documentation can be found at [http://www.xcrysden.org xcrysden] website

Revision as of 14:06, 25 November 2020

Now we see some simple features of the software we will use to visualize and plotting data.

Gnuplot

Gnuplot is a powerful (and free!) program for plotting functions and data, also fit and interpolation can be done. Gnuplot allows realizing 1D and 2D plots, as well as contour plot and heatmaps. If you are using the QM virtual machine the software is already installed.

Let'start creating a data file with random numbers e.g.:

 $> cat > data.txt <<EOF 
 >0 2 4
 >1 5 3
 >2 4 2
 >3 6 4 
 EOF

and launch gnuplot by typing:

$>gnuplot

now we can plot functions by simply typing their expressions.

gnuplot> plot x**2.  # or just p x**2
gnuplot> plot x**2*sin(x)

or plot data contained in a file:

gnuplot> plot "data.txt"   # plot data points
gnuplot> plot "data.txt"  with linespoints # or "w lp" plot data points with lines
gnuplot> plot "data.txt" w lp lc "blue"  ps 2 # with linespoint, color blue and larger point size
gnuplot> set xrange [0.2] #select a range for the x axis
gnuplot> replot
gnuplot> plot "data.txt" u 2:3 t "data 2:3" w lp # we select column 2 and 3 and we add a legend
gnuplot> !cat data.txt  #with ! we escape to shell and we can use all the shell command without exit from gnuplot
gnuplot> save "myplot.gpt" #save the commands of your last plot into a file
gnuplot> load "myplot.gpt" #and load it
gnuplot> splot "data.txt" u 1:2:3 #2 dimensional plot
gnuplot> help plot # interactive help
gnuplot> help plot style

If you want to save an image, e.g. png

gnuplot> set terminal "png"
gnuplot> set output "myplot.png"
gnuplot> replot

an image myplot.png will be created.

http://gnuplot.info for Documentation and Demos

http://gnuplotting.org for more advanced scripting

Xmgrace

Grace is a free WYSIWYG (What You See Is What You Get) 2D graph plotting tool, for Unix-like operating systems. The package name stands for "GRaphing, Advanced Computation and Exploration of data."

Here you do not have to worry about syntax, as it is a point-and-click software. What you need to do is to launch the software:

$> xmgrace & # using the "&" symbol send the program in background

and load your data:

* Data --> Import --> Ascii
* Choose Single set if you want to plot the first 2 columns x-y column or Block data if you want to choose the columns to plot.
* Double click on the curve to set the appearance (size, color, style, legend)
* Double click on the axis to assign the axis appearance (range, label, ticks)
* Click on the apply button to see the outcome and accept to accept button if you are satisfied
* You can save your final plot, usually with a suffix ago
* you can open again by typing xmgrace myplot.agr
* you can export as an image, File--> Print Setup--> choose the format (jpeg, png etc.) and then File-->Print

More info at Grace website

Grace User's Guide

Xcrysden

Xcrysden is a useful program for viewing input and output files from quantum espresso (and others).

$> xcrysden --help
$> xcrysden --pwi Si-bulk.in
$> xcrysden --pwo Si-bulk.out $ xcrysden --xsf charge.xsf

Standard “Angstrom” format:

$> xcrysden --xyz molecule.xyz


Documentation can be found at xcrysden website