2011-03-14 66 views
63

我的類別需要用希臘字母命名。我正在使用ggplot2,它與數據一起工作得很漂亮。不幸的是,我無法弄清楚如何將這些希臘符號放在x軸上(在刻度線上),並讓它們出現在圖例中。有什麼辦法可以做到嗎?如何在ggplot2中使用希臘符號?

更新: 我看了一下link,但是,沒有描述好的方法來完成我想要做的事情。

+4

見'expression'功能的討論在這裏:http://stackoverflow.com/問題/ 1395105 /越來越膠乳進入r圖 – DrewConway 2011-03-14 02:43:53

+0

是否有任何提示從ggplot2獲取'視口'。如果可以這樣做,我相信改變x-tic標記將是直接的。 – Sam 2011-03-14 20:42:18

+0

你可以使用'latex2exp'包裝:https://cran.r-project.org/web/packages/latex2exp/vignettes/latex2exp.html – 2015-09-12 17:31:12

回答

113

這是一個出色的wiki,它解釋瞭如何在ggplot2中放置希臘符號。這是一個link。總之,這裏是你做什麼,以獲得希臘符號

  1. 文本標籤:使用parse = Tgeom_textannotate
  2. 軸標籤:使用expression(alpha)得到希臘阿爾法。
  3. 方面標籤:使用labeller = label_parsed裏面facet
  4. 圖例標籤:在圖例標籤中使用bquote(alpha == .(value))

您可以看到鏈接

編輯這些選項的詳細使用情況。使用沿着刻度線希臘符號的目標可以如下

require(ggplot2); 
data(tips); 
p0 = qplot(sex, data = tips, geom = 'bar'); 
p1 = p0 + scale_x_discrete(labels = c('Female' = expression(alpha), 
             'Male' = expression(beta))); 
print(p1); 

有關這樣做,以及如何使用它們,看到?plotmath時可用各種符號完整的文檔來實現。

+0

我希望那些希臘符號能夠標記抽動。我不確定我是否遵循這個答案。我會試試這個,然後回信。感謝您的指導。 – Sam 2011-03-14 19:57:37

+0

這不適用於我的目的至少。不過謝謝你的指點。 – Sam 2011-03-14 20:48:52

+0

@Sam,在我的編輯中查看示例代碼。它沿着你的X軸刻度線爲你提供希臘符號。這是你在找什麼? – Ramnath 2011-03-20 19:39:30

21

使用expression(delta)其中'delta'爲小寫字母δ和'Delta'得到大寫字母Δ

下面是希臘字符完整列表:

Αα阿爾法
Ββ測試
Γγ伽馬
Δδ增量
Εε的ε-
Ζζζ電
ΗηETA
Θθtheta
1ιiota
Kκk APPA
Λλ的λ
Μμ畝
ΝνNU
ΞξXI
ΟοOMICRON
ΠπPI
ΡρRHO
Σσ西格瑪
Ττ的tau
Υυ埃普西隆
φφ披
χχ智
ψψPSI
Ω ωω-

編輯:從複製的意見,並結合使用時,與其他詞使用像:expression(Delta*"price")

+1

如何獲得像「Δprice」這樣的標籤? '表達式(Deltaprice)''不起作用,'表達式(Delta價格)' – jf328 2017-03-29 15:32:55

+0

@ jf328也可能'表達式(Delta)價格' – 2017-03-30 08:53:14

+2

謝謝。但那到底怎麼樣? 'xlab(表達式(Delta)價格)'給出錯誤 – jf328 2017-03-30 10:03:32

2

你不需要latex2exp包做你想做的事。下面的代碼可以做到這一點。

ggplot(smr, aes(Fuel.Rate, Eng.Speed.Ave., color=Eng.Speed.Max.)) + 
    geom_point() + 
    labs(title=expression("Fuel Efficiency"~(alpha*Omega)), 
color=expression(alpha*Omega), x=expression(Delta~price)) 

enter image description here

此外,一些評論(未應答,因爲這點的)被問及希臘字母后,將星號(*)。 expression(alpha~"*")的作品,所以我建議試試看。

更多關於獲得Δ Price的意見,我發現最直接的方法是expression(Delta~price))。如果您需要希臘字母前添加的東西,你也可以這樣做: expression(Indicative~Delta~price)它可以幫助您:

enter image description here