当前位置: 首页 > 知识库问答 >
问题:

matplotlib,绘制平均线[重复]

微生永春
2023-03-14
new_table = new_table.pivot(index='Date', columns='Country/Region', values='Deaths_Per_Confirmed_Case')
countries = list(new_table.columns)
covid = new_table.reset_index('Date')
covid.set_index(['Date'], inplace=True)
covid.columns = countries

所以我在上面创建了这个表格,现在我试图用它来绘制

import matplotlib.pyplot as plt
import matplotlib.ticker as ticker

colors = {'Ireland':'#DC3977','US':'#33F7FF'}
plt.style.use('fivethirtyeight')

plot = covid.plot(figsize=(16,12),color=list(colors.values()), linewidth=5, legend=False)
plot.set_ylim([0, covid.max().max()])
plot.yaxis.set_major_formatter(ticker.StrMethodFormatter('{x:,.0f}'))
plot.grid(color='#d4d4d4')
plot.set_xlabel('Date')
plot.set_ylabel('% Mortality Rate')


for country in list(colors.keys()):
    row = covid.iloc[-1]
    plot.text(x = covid.index[-1], y = row[country], color = colors[country], s = country, weight = 'bold')
    plot.text(x = covid.index[-1], y = covid[country].mean(), color = colors[country], s = 'Mean for ' + country + ": " + str(round(covid[country].mean(),2)), weight = 'bold')

# Section 9 - Adding Labels
plot.text(x = covid.index[1], y = int(covid.max().max())+1.5, s = "% Mortality Rate for New Cases", fontsize = 23, weight = 'bold', alpha = .75)
plot.text(x = covid.index[1], y = int(covid.max().max())+1.3, s = "For Ireland and the US", fontsize = 16, alpha = .75)

但是现在我想弄清楚如何画一条均值线,例如,我在图像的右边画了爱尔兰的均值,我不知道如何在这个均值的图表上画一条线。真的,任何帮助感谢。干杯,伙计们。

共有1个答案

常雅达
2023-03-14

水平线:plt。axhline(y#U位置)#y#U位置将是您的平均值

垂直线:plt。轴(x_位置)

作为参考,https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.axhline.html

https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.axvline.html

 类似资料:
  • 我正在使用python中的matplotlib绘制直方图,并希望绘制一条代表数据集平均值的线,以虚线的形式覆盖在直方图上(或者其他颜色也可以)。关于如何在柱状图上画一条线有什么想法吗? 我正在使用plot()命令,但不确定如何绘制垂直线(即,我应该为y轴指定什么值? 谢谢

  • 问题内容: 我已经使用样条插值法来平滑时间序列,并且还想在绘图中添加一条水平线。但是似乎有一个我无法控制的问题。任何帮助都会非常有帮助。这是我所拥有的: 问题似乎与我对水平线图的使用有关。 问题答案: 您是正确的,我认为这使您失望。您将要重用原始的x轴变量,并使用另一个包含变量的相同长度的numpy数组对其进行绘制。 希望可以解决问题!

  • 我使用样条插值来平滑时间序列,还想在图中添加一条水平线。但是似乎有一个问题超出了我的控制范围。任何帮助都会很有帮助。这是我所拥有的: 问题似乎在于我使用进行水平线绘制。

  • 我有一个从pandas数据框创建的直方图,我想绘制一条代表数据集平均值的垂直虚线。我已经回顾了这个线程,这正是我正在寻找的样式,但是,我不知道如何使它与我的代码一起工作(如下所示): 我最终收到了以下错误: 不知道这意味着什么,任何帮助都将不胜感激。 编辑:我的数据文件是一个有一列的csv,第一行是一个标题(字符串),所有后续的107行都是从app开始的值。1.0E 11至4.0E 11 假数据(

  • 问题内容: 有人对在情节上显示重叠线的最佳方法有何建议?我有很多这样的想法,我的想法是在不重叠的地方使用不同颜色的实线,在重叠的地方使用虚线,以便可见所有颜色并看到重叠的颜色。 但是,我该怎么办。 问题答案: 只需降低线条的不透明度即可使它们透明。您可以使用alpha变量来实现。例: 其中alpha范围是0-1,其中0是不可见的。

  • 在使用matplotlib时,如何为直方图绘制平均线(水平)? 现在,我可以毫无问题地绘制直方图。下面是我使用的代码: 我想绘制PAAE 1,2和AAE 1,2的平均线。我应该用什么来绘制平均线?