我目前正在使用由Sagemath托管的在线工作簿制作图表。
这是我正在编写的一些代码示例,旨在尝试生成图表:
myplot = list_plot(zip(range(20), range(20)), color='red')
myplot2 = list_plot(zip(range(20), [i*2 for i in range(20)]), color='blue')
combined = myplot + myplot2
combined.show()
这很基础 -- 实际上就是将两个散点图并排放置在一起。
有没有一种简单的方法来添加坐标轴标签、图例和可选的标题?
我设法想出了一个解决方案,可以让我添加坐标轴标签,但它看起来非常丑陋和愚蠢。
from matplotlib.backends.backend_agg import FigureCanvasAgg
def make_graph(plot, labels, figsize=6):
mplot = plot.matplotlib(axes_labels=labels, figsize=figsize)
mplot.set_canvas(FigureCanvasAgg(mplot))
subplot = mplot.get_axes()[0]
subplot.xaxis.set_label_coords(x=0.3,y=-0.12)
return mplot
a = make_graph(combined, ['x axis label', 'y axis label'])
a.savefig('test.png')
有没有更简单的方法来添加坐标轴标签、图例和标题?
show
中(这包括轴,其中axes=True
是默认值),而实际上可以访问绘图本身和/或特定数据点,而无需绘制绘图,如果这有意义的话。 - kcrismanmy_graphics_obj.SHOW_OPTIONS
字典来设置和查看稍后用于“show”命令的设置。 - Markshow(myplot,axes_labels=('$x$','$y$'))
。 - 681234