Маленькие колпачки для этикеток Gnuplot - PullRequest
1 голос
/ 30 января 2020

Я ищу команду или что-то эквивалентное для рисования меток в Gnuplot с маленькими заглавными буквами, например, использование \texsc{Mylabel} в LaTeX. Есть ли шанс сделать это без использования латекса в качестве терминала? Я предпочитаю создавать PDF напрямую.

1 Ответ

3 голосов
/ 01 февраля 2020

Я нашел обходной путь, используя ту же стратегию, что и @ mjp и @ theozh в этот ответ .

# Implements a 'textsc' function like in (La)TeX.
# Based on original answer at https://stackoverflow.com/a/54174759/11369382

reset
set encoding utf8 # mandatory

LCases="abcdefghijklmnopqrstuvwxyz"
SCases="ᴀʙᴄᴅᴇғɢʜɪᴊᴋʟᴍɴᴏᴘǫʀsᴛᴜᴠᴡxʏᴢ"

toscchr(c)= c eq ""  ?  ""  :  substr( SCases.c, strstrt(LCases.c, c), strstrt(LCases.c, c) )

texsc(s) = strlen(s) <= 1 ? toscchr(s) : texsc(s[1:strlen(s)/2]).texsc(s[(strlen(s)/2)+1:strlen(s)])

Mylabel = "The Quick Brown Fox jumps over the Lazy Dog"

position = "at graph 0.2,0.60"

set label Mylabel        @position offset 0, 0
set label texsc(Mylabel) @position offset 0,-1

plot x w p pt -1 not

Результат

result

...