2011-10-08 56 views
3

夥計們,我在使用mathematica時遇到了一個奇怪的問題。正如你從附件截圖中看到的那樣,排版不知何故被解釋爲純文本。mathematica在plot標籤中沒有正確顯示SubsuperscriptBox

有沒有辦法解決這個問題?

非常感謝! (我很困惑。實際上,它顯示了正確的事,有時...)

enter image description here

+3

請...在這裏複製並粘貼您的代碼。圍繞這種打字的人有許多懶惰的人。 (嘿!不要看着我!) –

+0

@belisarius還有一個問題涉及到嵌套分數框的類似解析問題。請儘量幫助我找到它。 –

+0

@Mr。對不起,我找不到它。 –

回答

5

與佈雷特,我無法重現bug在兩個版本7或8

然而,如果您在PlotLabel中使用數學,讓Mathematica使用自己的排版來渲染它可能會更好。訣竅是HoldForm

例如:

Plot[x, {x, 0, 1}, 
    PlotLabel -> HoldForm[\[Eta][T]/Subsuperscript[\[Epsilon], 0,2][T]]] 

會產生

a plot

不論用於埃塔或ε的任何定義。


正如指出的佈雷特,這其實不會在7.0.1版本不的工作,因爲它似乎有在TraditionalForm一個錯誤,即把方括號在施工
Power[f,i][x]//TraditionalForm
周圍的工作這是使用Superscript而不是Power

Power vs Subscript

同樣在上述情節的分母,而不是使用
Power[Subscript[...]][T],用Subsuperscript[...][T]

Subsuperscript

這意味着您不能使用標準(鍵盤快捷鍵或調色板)2D input,因爲使用此產生的SubsuperscriptBox被解釋爲Power[Subscript[...]]。我已經修復了上述圖形的代碼以反映這一點。

請注意,此TraditionalForm錯誤已被固定在數學版本8

+2

這讓我想起我那個小侄子眼睛裏充滿了淚水,那天從幼兒園回來告訴他媽媽:我感到沮喪!我無法做得不夠好! - :) –

+0

@belisarius :-D –

+2

當我在V7.0.1中嘗試這個時,我在分母中得到方括號而不是括號。 –

6

我可以V7.0.1重現此,但與V8.0.1。

我發現的最簡單的解決方法是使用分子和分母的單獨字符串構造分數。

你也可以採取排版方式的東西,而不是使用字符串都:

Format[\[Epsilon][x_, sub_, sup_], TraditionalForm] := 
Subsuperscript[\[Epsilon], sub, sup][x] 

Graphics[{}, PlotLabel -> Style[Gamma[T]/\[Epsilon][T, 0, 2]]] 
7

可以觀察到這個問題超出PlotLabel的範圍。它也影響上標和下標。避免此問題的一種方法是在子/上標對象和相鄰符號之間插入一個空格。

我試着發表一個例子,但是錯誤的程度不夠,以至於無法將表達式粘貼到原始格式中。我將不得不求助於僅僅包括我所看到的一張照片。儘管兩條線看起來相似,但第二條線中的「e 」和「(T)」之間有空格。

在數學7.0.1:

enter image description here

這在某種程度上類似於Known issues with copying code from Mathematica to other platforms?兩個錯誤應對FractionBox內 「2D」 的對象。

+0

哪個版本的Mma是這樣的? – Simon

+0

@Simon 7.0.1 - 對不起,我在原始文章中加入了這個內容,但是我在修訂版中遺漏了它。 –

+0

@Simon我知道有一個關於嵌套分數類似問題的問題沒有正確解析。你能找到它嗎? –