泰勒图
【摘要】 泰勒图泰勒图:泰勒图常用于评价模型的精度,常用的精度指标有相关系数,标准差以及均方根误差(RMSE)。一般而言,泰勒图中的散点代表模型,辐射线代表相关系数,横纵轴代表标准差,而虚线代表均方根误差。泰勒图一改以往用散点图这种只能呈现两个指标来表示模型精度的情况。从更广义地来讲,泰勒图可以延展到需要用二维平面呈现三维数据的应用场景。这一点与三元图有异曲同工之妙。安装:pip install S...
泰勒图
泰勒图:泰勒图常用于评价模型的精度,常用的精度指标有相关系数,标准差以及均方根误差(RMSE)。一般而言,泰勒图中的散点代表模型,辐射线代表相关系数,横纵轴代表标准差,而虚线代表均方根误差。泰勒图一改以往用散点图这种只能呈现两个指标来表示模型精度的情况。从更广义地来讲,泰勒图可以延展到需要用二维平面呈现三维数据的应用场景。这一点与三元图有异曲同工之妙。
安装:
pip install SkillMetrics
代码:
import matplotlib.pyplot as plt
from matplotlib import rcParams
import numpy as np
import pandas as pd
import skill_metrics as sm
data = pd.read_excel(r"test_data.xlsx")
# 以下操作可以当作固定步骤
taylor_stats1 = sm.taylor_statistics(data.pred1,data.ref,'data')
taylor_stats2 = sm.taylor_statistics(data.pred2,data.ref,'data')
taylor_stats3 = sm.taylor_statistics(data.pred3,data.ref,'data')
sdev = np.array([taylor_stats1['sdev'][0], taylor_stats1['sdev'][1],
taylor_stats2['sdev'][1], taylor_stats3['sdev'][1]])
crmsd = np.array([taylor_stats1['crmsd'][0], taylor_stats1['crmsd'][1],
taylor_stats2['crmsd'][1], taylor_stats3['crmsd'][1]])
ccoef = np.array([taylor_stats1['ccoef'][0], taylor_stats1['ccoef'][1],
taylor_stats2['ccoef'][1], taylor_stats3['ccoef'][1]])
# 设置matplotlib 基本配置
rcParams["figure.figsize"] = [6, 6]
rcParams["figure.facecolor"] = "white"
rcParams["figure.edgecolor"] = "white"
rcParams["figure.dpi"] = 80
rcParams['lines.linewidth'] = 1 #
rcParams["font.family"] = "Times New Roman"
rcParams.update({'font.size': 12}) #
plt.close('all')
# 开始绘图
text_font = {'size':'15','weight':'bold','color':'black'}
sm.taylor_diagram(sdev,crmsd,ccoef)
plt.title("Example01 Of taylor_diagram() in Python",fontdict=text_font,pad=35)
``
上面是python代码实现,其他还有matlab
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)