matplotlib 不会在图例中写 approx LaTeX 字符?

2023-10-18Python开发问题
4

本文介绍了matplotlib 不会在图例中写 approx LaTeX 字符?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

由于某种原因,我无法让 matplotlib 在图例中写下 approx LaTeX 符号.

For some reason I can't get matplotlib to write down the approx LaTeX symbol in a legend.

这是一个 MWE:

import matplotlib.pyplot as plt
plt.scatter([0.5, 0.5], [0.5, 0.5], label='$U_{c} approx %0.1f$' % 22)
#plt.scatter([0.5, 0.5], [0.5, 0.5], label='$U_{c} simeq %0.1f$' % 22)
#plt.scatter([0.5, 0.5], [0.5, 0.5], label='$U_{c} sim %0.1f$' % 22)
plt.legend(fancybox=True, loc='upper right', scatterpoints=1, fontsize=16)
plt.show()

请注意,第一行不会显示 approx 字符或后面的值,但 simeqsim 都可以正常工作.

Notice the first line will not show the approx character or the value after it but both simeq and sim work fine.

我刚刚在 matplotlib 的 Github 但我突然想到我可能做错了什么,所以我最好问一下.如果是,我会删除关闭它.

I've just opened a new issue in matplotlib's Github but it occurred to me that I might be doing something wrong so I better ask. If I am, I'll delete close it.

推荐答案

尝试使用原始字符串文字:r'$U_{c} approx %0.1f$'.

Try using a raw string literal: r'$U_{c} approx %0.1f$'.

In [8]: plt.scatter([0.5, 0.5], [0.5, 0.5], label=r'$U_{c} approx %0.1f$'%22)
Out[8]: <matplotlib.collections.PathCollection at 0x7f799249e550>
In [9]: plt.legend(fancybox=True, loc='best')
Out[9]: <matplotlib.legend.Legend at 0x7f79925e1550>
In [10]: plt.show()

出现这种情况的原因如下:

The reason this is happening is as follows:

  • 如果字符串文字前面没有 r,则字符串被解释器解释为:

  • Without the r infront of the string literal, the string is interpreted by the interpreter as:

'$U_{c}' + 'a' + '大约 22.0$'

'$U_{c} ' + 'a' + 'pprox 22.0$'

'a' 是 ASCII Bell 的特殊转义字符:BEL.

The 'a' is a special escaped character for the ASCII Bell: BEL.

为确保字符串中的反斜杠 () 不会产生奇怪的转义字符,请在前面添加 r.

To make sure backslashes () in the string aren't creating weird escaped characters, add the r out front.

这篇关于matplotlib 不会在图例中写 approx LaTeX 字符?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

The End

相关推荐

在xarray中按单个维度的多个坐标分组
groupby multiple coords along a single dimension in xarray(在xarray中按单个维度的多个坐标分组)...
2024-08-22 Python开发问题
15

Pandas中的GROUP BY AND SUM不丢失列
Group by and Sum in Pandas without losing columns(Pandas中的GROUP BY AND SUM不丢失列)...
2024-08-22 Python开发问题
17

pandas 有从特定日期开始的按月分组的方式吗?
Is there a way of group by month in Pandas starting at specific day number?( pandas 有从特定日期开始的按月分组的方式吗?)...
2024-08-22 Python开发问题
10

GROUP BY+新列+基于条件的前一行抓取值
Group by + New Column + Grab value former row based on conditionals(GROUP BY+新列+基于条件的前一行抓取值)...
2024-08-22 Python开发问题
18

PANDA中的Groupby算法和插值算法
Groupby and interpolate in Pandas(PANDA中的Groupby算法和插值算法)...
2024-08-22 Python开发问题
11

PANAS-基于列对行进行分组,并将NaN替换为非空值
Pandas - Group Rows based on a column and replace NaN with non-null values(PANAS-基于列对行进行分组,并将NaN替换为非空值)...
2024-08-22 Python开发问题
10