首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用Python可视化实现循环作图

回复“资源”即可获赠Python学习资料

与君离别意,同是宦游人。

大家好,我是皮皮。

一、前言

前几天在Python白银交流群【在 途中要勤奋的熏肉肉】问了一道Python可视化处理的问题,如下图所示。

原始代码,如下所示:

import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

import scipy.stats as st

result_parameter_peak = pd.read_csv("result_parameter_peak.csv", encoding="utf_8_sig")

# 设置画布

fig = plt.figure(figsize=(20, 8))  # figsize是常用的参数.(宽,高)

axl = fig.add_subplot(1, 1, 1)

for i in range(len(result_parameter_peak)):

  x = np.arange(0, 400, 1)

  # 绘制gamma曲线

  y661 = st.gamma.pdf(x, result_parameter_peak.iloc[i, 1], scale=result_parameter_peak.iloc[i, 2])

  axl.plot(x, y661, 'r-.', label="α= 9.9028,β=10.4205")

  # 设置坐标轴标题

  axl.set_xlabel('Time')

  axl.set_ylabel('Probility')

  axl.set_title('分布')

  # 可视化

  plt.show()

得到的只是单个的图。

二、实现过程

这里【月神】给了一个思路和一份示例代码,如下所示:

import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

import scipy.stats as st

result_parameter_peak = pd.read_csv("result_parameter_peak.csv", encoding="utf_8_sig")

plt.figure()

for i, alpha, beta in result_parameter_peak.itertuples():

  x = np.arange(0, 300, 1)

  # 绘制gamma曲线

  y661 = st.gamma.pdf(x, alpha, scale=beta)

  plt.plot(x, y661, '-.')

  # 设置坐标轴标题

  plt.xlabel('Time')

  plt.ylabel('Probility')

  plt.title('分布')

# 可视化

plt.show()

运行之后,结果如下图所示:

顺利地解决了粉丝的问题!

后来【小趴菜】又给图加了图注,看上去高大上一些,代码如下所示:

import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

import scipy.stats as st

result_parameter_peak = pd.read_csv("result_parameter_peak.csv", encoding="utf_8_sig")

plt.figure()

for i, alpha, beta in result_parameter_peak.itertuples():

  x = np.arange(0, 300, 1)

  # 绘制gamma曲线

  y661 = st.gamma.pdf(x, alpha, scale=beta)

  # plt.plot(x, y661, '-.')

  plt.plot(x, y661, '-.', label="α:" + str(alpha) + "β:" + str(beta))

  # 设置坐标轴标题

  plt.xlabel('Time')

  plt.ylabel('Probility')

  plt.title('fenbu')

# 可视化

plt.legend()

plt.show()

得到的效果图如下所示:

三、总结

大家好,我是皮皮。这篇文章主要盘点了一道matplotlib作图的问题,文中针对该问题给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。

最后感谢粉丝【在 途中要勤奋的熏肉肉】提问,感谢【月神】、【小趴菜】给出的思路和代码解析,感谢【dcpeng】、【千葉ほのお】、【德善堂小儿推拿-瑜亮老师】、【猫药师Kelly】、【Ming】等人参与学习交流。

小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。

-------------------End-------------------

欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

万水千山总是情,点个【在看】行不行

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OXyTTnJAeXhAM2X3cOv0t64g0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券