Excel 科学计数法指数格式

Excel 科学计数法指数格式

我正在用 Excel 制作一个图表,将以专业方式发布。我有一个对数图,轴标记为 1E0、1E-1、1E-2 等。但出于显示目的,我更喜欢数字格式为

10、10^-1、10^-2,即

文件

有办法吗?谢谢。

后续问题:有没有办法将第二组单位添加到单个轴,即:

在此处输入图片描述

答案1

不,Excel 仅使用 E+/E- 格式进行科学计数。但是,您可以创建 Excel 图表并将其作为 EMF 粘贴到另一个应用程序(例如 PowerPoint)中,然后在那里操作数字格式。

第二个问题也是如此:您可以添加次轴,但它始终位于图表的右侧。将其粘贴为 EMF 并取消分组后,您可以将标签堆栈移到左侧。

答案2

要以数学符号的形式显示 10 的幂,您需要准备一组这样的文本标签,并将它们显示出来,而不是 y 轴上的标准数字标签。为此,您需要向图表添加一个额外的数据系列,其中 x = 0 和您想要在标签上显示的 y 值。
该过程在其他地方进行了描述。
如何在 Excel 图表上创建基于文本的 Y 轴
图表轴 - 使用文本代替数字 - Excel 和 Google 表格 - Excel 自动化
标签本身应使用与上标字符-和数字相对应的 Unicode 字符来准备。例如,可以使用这样的 VBA 代码。

Sub SuperScript()
    ' generating labels for Y axis
    Dim start As Range
    Set start = ActiveCell
    Dim ex As Long, ex0 As Long, exf As Long, m As String, upd As String
    ex0 = 2 'upper limit
    exf = -6  'bottom limit
    For ex = ex0 To exf Step -1
       If ex < 0 Then m = ChrW(&H207B) Else m = vbNullString
       Select Case Abs(ex)
          Case 1: upd = ChrW(&HB9)
          Case 2: upd = ChrW(&HB2)
          Case 3: upd = ChrW(&HB3)
          Case 0, 4 To 9: upd = ChrW(&H2070 + Abs(ex))
       End Select
       start.Offset(ex0 - ex).Value = "10" & m & upd
    Next ex
End Sub

示例图表 Y 轴上的科学标签

答案3

对于你的次要要求,你可以尝试“作弊”:

  • 删除所有轴标签(或使用自定义数字格式,使它们不可见)

  • 建立一个虚拟数据系列,其中包含您想要标记的点数,每个轴一个。一个将每个点的 x=0 替换垂直轴,一个将每个点的 y=0 替换水平轴。其他值(可能)在每个数量级,即 0.1、1、10 等

  • 输入一系列标签,以显示两种格式的数字,并整理它们之间的空白。例如,标签可能是

    10 (100) 
    

或者

    1  (10)

(注意间距,使后半部分对齐)

  • 您可能能够使用回车符来强制换行
  • 添加这些系列,以便它们绘制在轴所在的位置。格式设置为不显示可见的线或标记。添加数据标签。
  • 在数据标签格式中,您可以告诉它显示与值本身无关的标签列表

另外:如果这是一个分类水平轴而不是基于值的轴,则可以使用堆叠类别,就像您经常看到的年份和月份,或类别/子类别一样,例如:

Oct   Nov   Dec   Jan   Feb   Mar
2022              2023

相关内容