在轴上显示小数位和科学计数法

2023-11-21

我正在使用 python 2.7 在 pyqt 程序中使用 matplotlib 绘制一些大数字。我的 y 轴范围为 1e+18 到 3e+18(通常)。我希望看到每个刻度线以科学计数法显示值并保留两位小数。例如,2.35e+18 而不是 2e+18,因为对于一些刻度线,2e+18 和 3e+18 之间的值仍然仅读取 2e+18。这是该问题的一个示例。

import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
x = np.linspace(0, 300, 20)
y = np.linspace(0,300, 20)
y = y*1e16
ax.plot(x,y)  
ax.get_xaxis().set_major_formatter(plt.LogFormatter(10,  labelOnlyBase=False))
ax.get_yaxis().set_major_formatter(plt.LogFormatter(10,  labelOnlyBase=False))
plt.show()

如果您使用的话,这真的很容易做到matplotlib.ticker.FormatStrFormatterLogFormatter。以下代码将以格式标记所有内容'%.2e':

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.ticker as mtick

fig = plt.figure()

ax = fig.add_subplot(111)

x = np.linspace(0, 300, 20)

y = np.linspace(0,300, 20)
y = y*1e16

ax.plot(x,y)

ax.yaxis.set_major_formatter(mtick.FormatStrFormatter('%.2e'))

plt.show()

Example plot

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在轴上显示小数位和科学计数法 的相关文章

  • Python Popen 与 psexec 挂起 - 不良结果

    我对 subprocess Popen 和我认为是管道的问题有疑问 我有以下代码块 从 cli 运行时 100 都不会出现问题 p subprocess Popen psexec serverName get cmd c ver echo
  • Python - 将宽字符字符串从二进制文件转换为 Python unicode 字符串

    这是漫长的一天 我有点困惑 我正在读取一个包含大量宽字符字符串的二进制文件 我想将它们转储为 Python unicode 字符串 为了解压非字符串数据 我使用 struct 模块 但我不知道如何对字符串执行相同的操作 例如 阅读 系列 一
  • python future 和元组解包

    实现像使用 future 进行元组解包这样的事情的优雅 惯用的方法是什么 我有这样的代码 a b c f x y g a b z h y c 我想将其转换为使用期货 理想情况下我想写一些类似的东西 a b c ex submit f x y
  • 如何迭代按值排序的 Python 字典?

    我有一本字典 比如 a 6 b 1 c 2 我想迭代一下by value 不是通过键 换句话说 b 1 c 2 a 6 最直接的方法是什么 sorted dictionary items key lambda x x 1 对于那些讨厌 la
  • 在 Python distutils 中从 setup.py 查找脚本目录的正确方法?

    我正在分发一个具有以下结构的包 mymodule mymodule init py mymodule code py scripts script1 py scripts script2 py The mymodule的子目录mymodul
  • Django 模型在模板中不可迭代

    我试图迭代模型以获取列表中的第一个图像 但它给了我错误 即模型不可迭代 以下是我的模型和模板的代码 我只需要获取与单个产品相关的列表中的第一个图像 模型 py class Product models Model title models
  • 填充两个函数之间的区域

    import matplotlib pyplot as plt import numpy as np def domain x np arange 0 10 0 001 f1 lambda x 2 x x 2 0 5 plt plot x
  • 如何在 Ubuntu 16.04 上的 Python 3 / Matplotlib 2 中安装底图?

    I tried pip3 install basemap but Basemap https sourceforge net projects matplotlib files matplotlib toolkits 好像不在 PyPI 上
  • Pandas 数据帧到 numpy 数组 [重复]

    这个问题在这里已经有答案了 我对 Python 很陌生 经验也很少 我已经设法通过复制 粘贴和替换我拥有的数据来使一些代码正常工作 但是我一直在寻找如何从数据框中选择数据 但无法理解这些示例并替换我自己的数据 总体目标 如果有人真的可以帮助
  • 使用鼻子获取设置中当前测试的名称

    我目前正在使用鼻子编写一些功能测试 我正在测试的库操作目录结构 为了获得可重现的结果 我存储了一个测试目录结构的模板 并在执行测试之前创建该模板的副本 我在测试中执行此操作 setup功能 这确保了我在测试开始时始终具有明确定义的状态 现在
  • Numpy 过滤器平滑零区域

    我有一个 0 及更大整数的 2D numpy 数组 其中值代表区域标签 例如 array 9 9 9 0 0 0 0 1 1 1 9 9 9 9 0 7 1 1 1 1 9 9 9 9 0 2 2 1 1 1 9 9 9 8 0 2 2 1
  • 在 pytube3 中获取 youtube 视频的标题?

    我正在尝试构建一个应用程序来使用 python 下载 YouTube 视频pytube3 但我无法检索视频的标题 这是我的代码 from pytube import YouTube yt YouTube link print yt titl
  • Python 将日志滚动到变量

    我有一个使用多线程并在服务器后台运行的应用程序 为了无需登录服务器即可监控应用程序 我决定包括Bottle http bottlepy org为了响应一些HTTP端点并报告状态 执行远程关闭等 我还想添加一种查阅日志文件的方法 我可以使用以
  • Tkinter - 浮动窗口 - 调整大小

    灵感来自this https stackoverflow com a 22424245 13629335问题 我想为我的根窗口编写自己的调整大小函数 但我刚刚注意到我的代码显示了一些性能问题 如果你快速调整它的大小 你会发现窗口没有像我希望
  • 当鼠标悬停在上面时,intellisense vscode 不显示参数或文档

    我正在尝试将整个工作流程从 Eclipse 和 Jupyter Notebook 迁移到 VS Code 我安装了 python 扩展 它应该带有 Intellisense 但它只是部分更糟糕 我在输入句点后收到建议 但当将鼠标悬停在其上方
  • 字典和数组作为类变量与实例变量

    这是赚取积分的简单方法 请解释以下内容 class C a b 0 c def init self self x def d self k v self x k v self a k v self b v self c append v d
  • 如何读取Python字节码?

    我很难理解 Python 的字节码及其dis module import dis def func x 1 dis dis func 上述代码在解释器中输入时会产生以下输出 0 LOAD CONST 1 1 3 STORE FAST 0 x
  • Elastic Beanstalk 中的 enum34 问题

    我正在尝试在 Elastic Beanstalk 中设置 django 环境 当我尝试通过requirements txt 文件安装时 我遇到了python3 6 问题 File opt python run venv bin pip li
  • 列表值的意外更改

    这是我的课 class variable object def init self name name alias parents values table name of the variable self name 这是有问题的函数 f
  • 您可以使用关键字参数而不提供默认值吗?

    我习惯于在 Python 中使用这样的函数 方法定义 def my function arg1 None arg2 default do stuff here 如果我不供应arg1 or arg2 那么默认值None or default

随机推荐

  • Apache Camel 中已弃用的 XmlJsonDataFormat 的替代方案

    在 Apache Camel 中 我尝试使用 XmlJsonDataFormat 进行从 XML 到 JSON 的快速转换 然而 XMLJSON http camel apache org xmljson html 已弃用 因此我不确定除了
  • 操作栏选项卡未填充选项卡栏

    After hours of trying I finally found a method to separate the actionbar tabbar from the actionbar manualy actionbar con
  • 隐藏径向刻度标签 matplotlib

    我正在尝试用以下代码绘制极坐标图 import numpy as np import matplotlib pylab as plt def power angle l lam return 1 lam np cos np pi l np
  • Angular2 - ngx-剪贴板不工作

    我按照中所述安装了 ngx clipboard文档并将 js 也包含在 systemjs config 中 但是我收到以下错误 Unhandled Promise rejection Template parse errors Can t
  • 使用 NSubstitute 模拟通用方法

    我有一个带有许多通用方法的接口 这些方法根据传入的数据类型执行操作 如何使用 NSubstitute 模拟它 目前 我不得不使用具体的类而不是模拟 因为我无法处理调用该方法的所有可能类型 public interface IInstance
  • 如何使用我喜欢的 diff 工具/查看器查看“git diff”输出?

    当我打字时git diff 我想使用我选择的视觉差异工具 Windows 上的 SourceGear diffmerge 查看输出 我如何配置 git 来做到这一点 从Git1 6 3开始 您可以使用git difftool 脚本 see
  • 如何以编程方式设置自定义标题栏上的背景颜色渐变?

    有很多关于实现自定义标题栏的教程和问题 但是 在我的自定义标题栏中 我有一个自定义背景渐变 我想知道如何在我的代码中动态设置它 这是我的自定义标题栏被调用的地方 requestWindowFeature Window FEATURE CUS
  • 使用 Jade 显示输入值内的数据

    我对 Jade 相当陌生 想要显示一些输出的数据value文本的价值input 像这样 input type text name date value THISRIGHTHURR 但只需要值viewpost date 我尝试了多种方法 但似
  • ValueError:sklearn.RFECV 中不支持未知[重复]

    这个问题在这里已经有答案了 我试图使用 rfecv 缩小与我的分类器真正相关的特征数量 这是我写的代码 import sklearn import pandas as p import numpy as np import scipy as
  • 将十六进制颜色代码转换为颜色名称

    如何将颜色的十六进制表示形式转换为其相应的名称 例如 考虑以下颜色 rainbow 4 FF0000FF 80FF00FF 00FFFFFF 8000FFFF 他们的名字是什么 希望每个代码都有一个名字 我发现了这个功能col2rgb 但它
  • 如何在 Objective-C 中转发类方法?

    在 Objective C 中 我知道你可以将选择器从一个实例转发到另一个实例 id forwardingTargetForSelector SEL aSelector 我怎样才能将类方法转发到另一个类 resolveClassMethod
  • 下载 YouTube 视频? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我想以编程方式下载 youtube 视频 使用 Java 我如何将 youtube 视频链接转换为可下载的 URL 浏览器使用以下代码播放 YouT
  • Android:当我为 ListView 设置 OnClickListener 时

    lv setOnClickListener new OnClickListener public void onClick View v Does v参考ListViewlv或列表中选择的特定项目 我相信v指的是整体ListView 要为项
  • 桥接转换:__bridge_transfer 与带有合成 setter 的 __bridge

    我正在使用 ARC 并且在使用时遇到困惑 bridge transfer 我有一处房产userName如下 property nonatomic retain NSString userName synthesize userName us
  • 查找未排序数组的中位数

    为了找到未排序数组的中位数 我们可以在 O nlogn 时间内为 n 个元素创建一个最小堆 然后我们可以逐个提取 n 2 个元素以获得中位数 但这种方法需要 O nlogn 时间 我们可以通过某种方法在 O n 时间内完成同样的事情吗 如果
  • .NET Framework 3.5 和 TLS 1.2

    我目前有一个使用 NET 3 5 框架的 Web 应用程序 我想知道它是否与 TLS 1 2 兼容 我们的代码中没有任何地方指定 TLS 版本 这是一个遗留应用程序 目前无法重新编译 我没有找到太多关于是否可以或不可以的信息 但我的印象是兼
  • MySQL,长文本、文本还是 blob 哪个更有效?提高插入效率

    我正在将大量数据从多个数据库迁移到一个数据库中 作为中间步骤 我将数据复制到每种数据类型和源数据库的文件中 然后将其复制到新数据库中的一个大表中 新表中的结构很简单 称为 migrate data 它由 id 主键 type id 在数据类
  • 异常:无法从 START_OBJECT 标记中反序列化 java.util.ArrayList 的实例

    我试图显示来自网络服务的数据并收到此错误 线程 main 中出现异常 com fasterxml jackson databind JsonMappingException 无法从 START OBJECT 令牌中反序列化 java uti
  • Boost 属性树和 Xml 解析问题

    我在用着boost property tree 该文档非常模糊 总体来说在大多数情况下没有帮助 查看源代码 示例也没有多大帮助 我想知道的是以下内容
  • 在轴上显示小数位和科学计数法

    我正在使用 python 2 7 在 pyqt 程序中使用 matplotlib 绘制一些大数字 我的 y 轴范围为 1e 18 到 3e 18 通常 我希望看到每个刻度线以科学计数法显示值并保留两位小数 例如 2 35e 18 而不是 2