vaspkit自动绘图设置教程

vaspkit自1.2.5版本后即更新了自动绘图功能,绘图的范围包括布里渊区示意图、能带图、态密度图、3d能带等等,均可在vasp计算完成后处理时自动绘制能带,在最新版本更新了可将能带和态密度绘制在一张图片上的功能。

示意图如下

正常能带图(vaspkit-211功能):

图片

区分s和p轨道贡献的投影能带图(vaspkit-213功能):

图片

    区分不同元素贡献的投影能带图(vaspkit-215功能,限制最多三个元素):

图片

布里渊区图,附带推荐高对称点路径(vaspkit-303功能,依据晶体空间群对称性而定):

图片

能带反折叠有效能带(vaspkit-282功能,推荐使用matlab后续绘图处理):

图片

3D能带(vaspkit-23功能,对2维材料HOMO & LUMO Bands绘图,也可使用绘图脚本通过python或matlab绘图):

图片

vaspkit开启自动绘图环境要求:python3 和matplotlib。

建议安装anaconda3完成python环境配置。

vaspkit环境文件路径为~/.vaspkit,可通过vi或vim命令编辑。

图片

其中,PYTHON_BIN为python3路径,如果anaconda3为默认设置安装的话可直接写为~/anaconda3/bin/python3,如果不清楚系统python路径,可通过下面命令找到路径并替换更改

which python3

AUTO_PLOT为是否开启自动绘图功能,默认为FLASE。

在vaspkit的环境配置文件(~/.vaspkit)中,从#BEGIN_CUSTOMIZE_PLOT  到

#END_CUSTOMIZE_PLOT

部分都是画图的设置,部分设置为vaspkit pro的设置内容,即便修改,对普通版vaspkit也不会生效。

具体设置细节可学习matplotlib使用。

开启自动绘图后,在运行vaspkit处理VASP计算数据后,部分环节会出现绘制图片的过程,大部份机器会报字体缺失的问题

findfont: Font family ['arial'] not found. Falling back to DejaVu Sans.

这个情况可以直接忽略。

在每次绘图后,在文件夹中会存有一个名为PLOT.In 的文件,如对图片绘制有要求,可以自行更改PLOT.In文件然后重新执行命令,vaspkit会按该文件里的设置重新绘图。

PLOT.In文件和vaspkit环境文件(~/.vaspkit)中从#BEGIN_CUSTOMIZE_PLOT  到

#END_CUSTOMIZE_PLOT的部分基本是一致的。

#BEGIN_CUSTOMIZE_PLOT         #+------------------------------------------------------------------------------------------------------------------+#| WARNNING! The character-type values of plot variables are case sensitive and must be enclosed in single quotes.  |#+------------------------------------------------------------------------------------------------------------------+# https://matplotlib.org/3.3.3/tutorials/introductory/customizing.html# https://matplotlib.org/tutorials/text/text_props.html# https://github.com/rougier/matplotlib-cheatsheet                             # Advanced Features of VASPKIT Pro versionfigure_format                 =     'pdf'                          # string type (default: 'jpg'). Options: 'png', 'pdf', 'eps', 'jpg', etc.figure_height                 =      4.0                           # float type (default: 4.0). The height of the figure.figure_width                  =      5.0                           # float type (default: 5.0). The width of the figure.dpi                           =      400                           # integer type (default: 400). The resolution of the figure in dots-per-inch.                                                                # Global settings             =                                    figure_style                  =     'default'                      # string type (default: 'default'). Options: 'default', 'classic', 'grayscale', 'seaborn', 'bmh', 'seaborn-notebook', etc.font_family                   =     'arial'                        # string type (default: 'arial'). Options: 'fantasy','arial','sans-serif', 'monospace', 'cursive', 'serif', etc.global_fontsize               =      12.0                          # float type (default: 15.0).label_fontsize                =      12.0                          # float type (default: 15.0).number_format                 =      '%.3f'                        # string type (default: 15.0).                                                                 # Legend-related settings     =                                    show_legend                   =     .TRUE.                         # .TRUE. or .FALSE (default: .TRUE.).legend_location               =     'best'                         # string type (default: 'best'). Options: 'best', 'upper right', 'upper left', 'lower left', 'lower right', 'right', 'center left', 'center right', 'lower center', 'upper center', 'center', etc.legend_fontsize               =      12.0                          # float type (default: 14.0).                              =                                    # Line-related settings       =                                    line_colors                   =     ['b', 'g', 'r', 'm']           # string type (default: 'blue'). Options: 'red', 'green', 'cyan', '#4c005c', etc.line_styles                   =     ['-', '-', '-', '-']           # string type (default: '-'). Options: '-' or solid, '--' or 'dashed', '-.' or 'dashdot', etc.line_widths                   =     [1.5, 1.5, 1.5]                # float type (default: 1.5).line_alpha                    =     [1.0, 1.0, 1.0]                # float type (default: 1.0). 0.0< alpha <=1.0, adjust the transparency of each line (by default, alpha=1.0)fill_areas                    =     .FALSE.                        # .TRUE. or .FALSE (default: .FLASE.). Fill the area between two horizontal curves.
# Marker-related settings     =     #marker_colors                =     ['blue', 'cyan', 'red', 'magenta', 'orange', 'lawngreen', 'deeppink', 'brown', 'dodgerblue']marker_symbols                =     ['o','o','o']                  # string type (default: 'o'). Options: 'o': Circle, 'x': Cross, '+': Plus sign, 'D': Filled diamond, 's': Square, '^': Triangle, etc.marker_colors                 =     ['#0db14b', '#4c005c', '#d93b2b','#0075dc', '#740aff', '#993f00', '#4c005c', '#426600']marker_sizes                  =     [60, 60.0, 60.0]               # float type (default: 10.0).marker_scale                  =     1.0                            # float type (default: 1.0). marker_sizes = marker_sizes * marker_scale        marker_alpha                  =     [0.8, 0.7, 0.6, 0.5, 0.4]      # float type (default: 1.0). 0.0< alpha <=1.0), adjust the transparency of markers (by default, alpha=1.0)                                   # Tick-related settings       =     #x_label                      =     'Wave vector'                  # string type (No default value).#y_label                      =     'Energy (eV)'                  # string type (No default value).#z_label                      =     'k$_x$ ($\\mathrm{\\AA}$)'     # string type (No default value).#x_limits                     =     [-8.0, 8.0]                    # float type [xmin, xmax] (No default value).#y_limits                     =     [-8.0, 8.0]                    # float type [ymin, ymax] (No default value).#z_limits                     =     [-8.0, 8.0]                    # float type [zmin, zmax] (No default value).#x_major_locator              =      2.0                           # float type (No default value).#y_major_locator              =      2.0                           # float type (No default value).#z_major_locator              =      2.0                           # float type (No default value).#x_minor_locator              =      1.0                           # float type (No default value).#y_minor_locator              =      1.0                           # float type (No default value).#z_minor_locator              =      1.0                           # float type (No default value).                                                                   # contour-related settings                                         colormap                      =     'RdBu'                         # string typ (default: 'jet'). Options: 'jet', 'hsv', 'viridis', 'gray', etc.contour_levels                =      5                             # integer type (default: 5).contour_limits                =     [0.0, 0.5]                     # float type (No default value).display_colorbar              =     .FLASE.                        # .TRUE. or .FALSE (default: .FLASE.).display_level_value           =     .FLASE.                        # .TRUE. or .FALSE (default: .FLASE.).colorbar_shrink               =      0.5                           # float type (default: 0.4).colorbar_orientation          =     'vertical'                     # 'horizontal' or 'vertical' (default: 'horizontal')                                                                   # 3D-plot related settings                                         elevation                     =     12.0                           # float type (default: 12).azimuth                       =     24.0                           # float type (default: 23).display_coordinate_axes       =    .TRUE.                          # .TRUE. or .FALSE (default: .TRUE.).                                                                   # XKCD sketch-style related settings                               xkcd_style                    =    .FALSE.                         # .TRUE. or .FALSE (default: .FLASE.). Turn on xkcd sketch-style drawing mode or not. xkcd_scale                    =     1                              # float type (default: 1.0). The amplitude of the wiggle perpendicular to the source line (default: 1).  xkcd_length                   =     100                            # float type (default: 100.0). The length of the wiggle along the line (default: 100). xkcd_randomness               =     2                              # float type (default: 2.0). The scale factor by which the length is shrunken or expanded (default: 2).#END_CUSTOMIZE_PLOT

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值