我在这里有以下代码:
import pandas as pd
import numpy as np
from scipy import stats
import matplotlib.pyplot as plt
import matplotlib.colors
from simple-colors import *
fig, ax = plt.subplots(1, 2, figsize = (8, 8))
ax[0].set_title('Deaths from Cancer in Michigan, 2020',pad=13,fontweight='bold',color='navy')
ax[1].set_title('Deaths from COVID-19 in Michigan, 2020',pad=13,fontweight='bold',color='navy')
ax[0].set_ylabel('Number of cases',labelpad=6,color='brown')
ax[1].set_ylabel('Number of cases',labelpad=6,color='brown')
ax[0].set_xlabel('Month',labelpad=6,color='brown')
ax[1].set_xlabel('Month',labelpad=6,color='brown')
ax[0].plot(COVID19['month'], COVID19['Cases'], color='green', marker='o', linestyle='dashed',linewidth=2, markersize=12)
ax[1].plot(Deaths['month'], Deaths['Cases'], color='red', marker='o', linestyle='dashed',linewidth=2, markersize=12)
ax[0].tick_params(axis='x', labelsize=10,rotation=45)
ax[1].tick_params(axis='x', labelsize=10,rotation=45)
ax[0].tick_params(axis='y', labelsize=10)
ax[1].tick_params(axis='y', labelsize=10)
Deaths = Deaths['Cases'].reset_index()
Deaths = Deaths.drop(['index'],axis=1)
fig.subplots_adjust(bottom=0.2)
Correlation = Deaths['Cases'].corr(COVID19['Cases'],method='pearson')
这给了我输出:
我想在此图中添加文本:
fig.text(0.3,0.05,'Pearsons Correlation Coefficient is {}'.format(Correlation))
这给了我输出:
但是,我想将“皮尔逊相关系数”部分加粗并加下划线。
我尝试过:
fig.text(0.3,0.05,"Pearson's Correlation Coefficient is: " + r"$\bf\underline{" + str(Correlation) + "}$")
但是这给了我错误:
RuntimeError:由于找不到乳胶,无法使用tex处理字符串
有人可以帮我吗?
在此处安装MacTex软件包:https://www.tug.org/mactex/(我使用的是Mac)
一旦我在计算机上安装了该软件包,就无需更改python解释器上的任何设置-我就照原样保留了它。
然后使用以下命令:
rc(‘text’,usetex=True)
fig.text(0.3,0.05, r"$\bf\underline{Pearsons \ Correlation \ Coefficient \ is:}$" + str(Correlation))
这将对文本“ Pearsons相关系数是:”加下划线并加粗。
[在单词之间的两侧添加一个'\'将会在单词之间添加一个空格。
似乎您不只是在使用“普通” Matplotlib,而是将其嵌入在Latex上使用。因此,该错误本身与Matplotlib不相关,而与Latex有关。请查看解决方案here