在 python 中绘制变异丰度与时间(例如,突变株)的关系图
Plot variant abundance vs. time (e,g, of mutant strains) in python
随着时间的推移,给定多个变体中每个变体的 [绝对] 数字,我想生成如下图:
Python 中是否有此功能(最好在 matplotlib 中,但不一定)?一般来说,这些地块有名字吗?我很难用谷歌搜索它,尽管我过去曾多次见过它们。
这种类型的图称为“时间堆栈图”matplotlib 具有用于构建时间堆栈图的内置函数。语法是:
matplotlib.pyplot.stackplot(x, y1, y2, ..., yn, colors=None, ...)
在您的情况下,x 是时间(例如以月为单位),y1,...,yn 是每个菌株的丰度,colors 表示 y1,...,yn 的颜色图。 (还有其他可选参数。)这是一个使用示例:
import matplotlib.pyplot as plt
days = [1,2,3,4,5]
sleep = [6,7,5,8,6]
eat = [2,2,1,2,1]
work = [5,7,10,8,6]
exercise= [3,3,0,1,3]
plt.plot([],[],color='green', label='sleep', linewidth=3)
plt.plot([],[],color='blue', label='eat', linewidth=3)
plt.plot([],[],color='red', label='work', linewidth=3)
plt.plot([],[],color='black', label='play', linewidth=3)
plt.stackplot(days, sleep, eat, work, exercise, colors=['green','blue','red','black'])
plt.xlabel('days')
plt.ylabel('activities')
plt.title('5 DAY ROUTINE')
plt.legend()
plt.show()
产生这个情节:
有关详细信息,请参阅此页面:https://www.educative.io/edpresso/how-to-create-a-stack-plot-using-matplotlib
来自 seaborn 包的密度图似乎是你的情况
import seaborn as sns
sns.kdeplot(...)
来自 pygal
的堆积图
import pygal
pygal.StackedLine(...)
StackPlot 来自 matplotlib
import matplotlib.pyplot as plt
plt.stackplot(...)
随着时间的推移,给定多个变体中每个变体的 [绝对] 数字,我想生成如下图:
Python 中是否有此功能(最好在 matplotlib 中,但不一定)?一般来说,这些地块有名字吗?我很难用谷歌搜索它,尽管我过去曾多次见过它们。
这种类型的图称为“时间堆栈图”matplotlib 具有用于构建时间堆栈图的内置函数。语法是:
matplotlib.pyplot.stackplot(x, y1, y2, ..., yn, colors=None, ...)
在您的情况下,x 是时间(例如以月为单位),y1,...,yn 是每个菌株的丰度,colors 表示 y1,...,yn 的颜色图。 (还有其他可选参数。)这是一个使用示例:
import matplotlib.pyplot as plt
days = [1,2,3,4,5]
sleep = [6,7,5,8,6]
eat = [2,2,1,2,1]
work = [5,7,10,8,6]
exercise= [3,3,0,1,3]
plt.plot([],[],color='green', label='sleep', linewidth=3)
plt.plot([],[],color='blue', label='eat', linewidth=3)
plt.plot([],[],color='red', label='work', linewidth=3)
plt.plot([],[],color='black', label='play', linewidth=3)
plt.stackplot(days, sleep, eat, work, exercise, colors=['green','blue','red','black'])
plt.xlabel('days')
plt.ylabel('activities')
plt.title('5 DAY ROUTINE')
plt.legend()
plt.show()
产生这个情节:
有关详细信息,请参阅此页面:https://www.educative.io/edpresso/how-to-create-a-stack-plot-using-matplotlib
来自 seaborn 包的密度图似乎是你的情况
import seaborn as sns
sns.kdeplot(...)
来自 pygal
的堆积图import pygal
pygal.StackedLine(...)
StackPlot 来自 matplotlib
import matplotlib.pyplot as plt
plt.stackplot(...)