在科研论文中,图表的重要性不言而喻。

为了画出高端的折线图,我在网上找了半天,费尽千辛万苦才终于找到,特此记录下来。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
p.random.seed(9615)

# generate df
N = 100
df = pd.DataFrame((.1 * (np.random.random((N, 5)) - .5)).cumsum(0),
columns=['a', 'b', 'c', 'd', 'e'],)

# plot line + confidence interval
fig, ax = plt.subplots()
ax.grid(True, alpha=0.3)

for key, val in df.iteritems():
l, = ax.plot(val.index, val.values, label=key)
ax.fill_between(val.index,
val.values * .7, val.values * 1.3,
color=l.get_color(), alpha=.3)
ax.set_xlabel('x')
ax.set_ylabel('y')
ax.set_title('line cahrt', size=20)

legend = ax.legend(loc='best')
plt.show()

其实重点就是fill_between()这个函数,实现上下扩张。

效果图