好小时
请告诉我圆线图的尖角的选项,使用matplotlib
我将在下面附上代码和图表。
必须没有尖角,如下图所示
def create_cpm_diagram():
mounts = ['Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Агуст', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь']
counter = [2604.14, 2567.56, 2950.61, 2225.23, 1867.68, 0, 0, 0, 0, 0, 0, 0]
matplotlib.use('Agg')
plt.subplots(figsize=(18, 8))
fig, ax = plt.subplots(figsize=(18, 8))
for label in (ax.get_xticklabels() + ax.get_yticklabels()):
label.set_fontsize(15)
plt.plot(mounts, counter, marker='o', markersize=7, color='#2d79bd')
plt.savefig('cpm_diagram.png')
下面是一个带有圆边的图形示例,但顶点之间的填充过多。
底部图表使用以下代码实现:
matplotlib.use('Agg')
x = np.array(mounts)
x = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12])
y = np.array(counter)
x_sm = np.array(x)
y_sm = np.array(y)
X_Y_Spline = make_interp_spline(x_sm, y_sm)
X_ = np.linspace(x_sm.min(), x_sm.max(), 5000)
Y_ = X_Y_Spline(X_)
plt.plot(X_, Y_)
如果您告诉我如何减少顶点之间的间隙并将 X 行中的名称替换为月份,那么此选项也比工作更有效
理想情况下,得到类似于顶点之间类似平滑过渡的东西:



好吧,样条曲线总是这样,这就是为什么它们是样条曲线。您几乎没有什么输入可以构建更平滑、更准确的图形。您可以显式更改样条曲线的阶数(默认情况下为 3,立方)——例如,我用二次曲线显示了第二个曲线图。好吧,设置标签名称非常容易: