How can I rotate xtics at 90 degree using gnuplot. Below I tried it but it gives me strange results (xticks need to be shifted downward). Any idea?
set terminal pngcairo transparent enhanced font "arial,10" fontscale 1.0 size 600, 400
set output 'datastrings.2.png'
set key fixed right top vertical Right noreverse enhanced autotitle columnhead nobox
set label 1 "Generate plot labels from first row in each column" at graph 0.02, 0.85, 0 left norotate back textcolor rgb "#56b4e9" nopoint
set label 2 "Generate x-axis labels from first column in each row" at graph 0.02, 0.8, 0 left norotate back textcolor rgb "#56b4e9" nopoint
set style data linespoints
set xtics norangelimit
set xtics ()
set xtics rotate by 90
set title "Auto-labeling plots from text fields in datafile"
set xrange [ * : * ] noreverse writeback
set x2range [ * : * ] noreverse writeback
set ylabel "mm"
set yrange [ 0.00000 : 200.000 ] noreverse nowriteback
set y2range [ * : * ] noreverse writeback
set zrange [ * : * ] noreverse writeback
set cbrange [ * : * ] noreverse writeback
set rrange [ * : * ] noreverse writeback
NO_ANIMATION = 1
## Last datafile plotted: "ctg-y2.dat"
plot 'ctg-y2.dat' using 2:xticlabel(1) index 2, '' using 2 index 3
Check help xtics
, there is the possibilty to right align your labels.
Just for illustration "August" is not abbreviated in order to demonstrate the right alignment of the rotated text.
Code:
### right align xtic labels
reset session
$Data <<EOD
Jan 1
Feb 2
Mar 3
Apr 4
May 5
Jun 6
Jul 7
August 8
Sep 9
Oct 10
Nov 11
Dec 12
EOD
set xtics rotate by 90 right
plot $Data u 2:xtic(1) w lp pt 7
### end of code
Result: