7

これは簡単な質問です。

Rのスモールキャップスにテキストを含む凡例を書き込もうとしています。

tikzDeviceを使用してプロットを記述し、LaTexでプロットを手動でスモールキャップスに変更することはできますが、R自体で可能かどうか知りたいですか?

ありがとう。

これは私がこれまでに使用しているRコードです。

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

これは私がRの伝説に入ろうとしているLaTex式です:

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

4

2 に答える 2

5

Unicode標準では、IPA拡張機能にいくつかの「スモールキャピタル」文字が定義されています。たとえば、このSmallcapsジェネレーターの使用:http://fsymbols.com/generators/smallcaps/

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

ここに画像の説明を入力してください

Unicode 5.1の時点で、スモールキャピタルのUnicode文字で完全なラテンアルファベットを表現できるようにするために欠落している文字は、QおよびXのスモールキャピタルバージョンのみです。http://en.wikipedia.org/wiki/Small_caps#Unicodeも参照してください。

于 2011-06-16T11:22:20.490 に答える
1

Smallcaps Generatorによって生成されたスモールキャップスは、すべてのフォントで機能するわけではありません。たとえば、Linux Libertineファミリ(Libertine、Biolinum)は、ここ(最後のページ)に示すように、Unicode私用領域(E000-F8FF)にスモールキャップスとオールドスタイル番号があります。

以下のプロット例では、スモールキャップジェネレーターから組み立てられた軸ラベルsmall_capssmall_nums、私用領域から組み立てられた文字列を使用しています。最初のプロットはTimesNewRomanを使用しています。これは、生成されたスモールキャップで機能しますが、私用領域に対応するグリフがありません。2番目のプロットはLinuxLibertineOを使用していますが、これにはIPA拡張機能のすべてのUnicode文字が含まれているわけではありません。

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)

reprexパッケージ(v0.2.1)によって2018-12-08に作成されました

于 2018-12-08T15:06:10.797 に答える