Маленькие заглавные буквы в R легенда? - PullRequest
6 голосов
/ 16 июня 2011

Это простой вопрос.

Я пытаюсь написать легенду с текстом в маленьких заглавных буквах в R.

Я могу написать график, используя tikzDevice ивручную измените график на заглавные буквы в LaTex, , но я хочу знать, возможно ли это в самом R ?

Спасибо.

Это код R, который яиспользуя пока:

legend("bottomright", inset=.05, c(expression(Delta*ZRT1), expression(Delta*ZRT2)), lty=1:2, pch=1:2)

Это выражение LaTex, которое я пытаюсь получить в легенде R:

\Delta Z\textsc{rt\oldstylenums{1}}

Ответы [ 2 ]

4 голосов
/ 16 июня 2011

Стандарт Unicode определяет количество «маленьких прописных» символов в расширениях IPA.Например, используя этот генератор Smallcaps: http://fsymbols.com/generators/smallcaps/

plot(1L:10, main="Aʙᴄᴅᴇғɢʜɪᴊᴋʟᴍɴᴏᴘǫʀsᴛᴜᴠᴡxʏᴢ")
legend("bottomright", expression(\Delta Zʀᴛ1")

enter image description here

Начиная с Unicode 5.1, единственные символы отсутствуют, чтобы разрешить представление полного латинского алфавита в маленьких заглавных символах Unicodeмалые заглавные версии Q и X. Смотрите также здесь: http://en.wikipedia.org/wiki/Small_caps#Unicode

0 голосов
/ 08 декабря 2018

Маленькие заглавные буквы, генерируемые Smallcaps Generator , не работают для всех шрифтов. Например, семейство Linux Libertine (Libertine, Biolinum) имеет свои маленькие заглавные буквы и номера старого стиля в области частного использования Unicode (E000-F8FF), как показано здесь (последняя страница) .

В приведенных ниже примерах графики используются метки осей, собранные из генератора маленьких колпачков, а также нити small_caps и small_nums, собранные из зоны личного пользования. Первый график использует Times New Roman, который работает с сгенерированными маленькими заглавными буквами, но не имеет соответствующих глифов в области частного использования. На втором графике используется Linux Libertine O, в котором не все символы Юникода из расширений IPA.

library(ggplot2)

x <- 1L:10
y <- 1L:10
df <- data.frame(x,y)

# assemble strings from Libertine's private use area.
small_caps <- "S\UE05D\UE051\UE05C\UE05C C\UE051\UE060\UE063"
small_nums <- "\UE020\UE021\UE022\UE023\UE024\UE025\UE026\UE027\UE028\UE029"

font <- "Times New Roman"
ggplot(df) +
  geom_point(aes(x = x, y = y)) +
  labs(x = paste("Sᴍᴀʟʟ Cᴀᴘs /", small_caps),
       y = paste("Oʟᴅ Sᴛʏʟᴇ", small_nums)) +
  theme(text = element_text(family = font)) +
  annotate("text", x = 2, y = 9, label = font)

font <- "Linux Libertine O"
ggplot(df) +
  geom_point(aes(x = x, y = y)) +
  labs(x = paste("Sᴍᴀʟʟ Cᴀᴘs /", small_caps),
       y = paste("Oʟᴅ Sᴛʏʟᴇ", small_nums)) +
  theme(text = element_text(family = font)) +
  annotate("text", x = 2, y = 9, label = font)

Создано в 2018-12-08 пакетом Представить (v0.2.1)

...