我今天一直在阅读如何在Django模板中渲染matplotlib.pyplot。
我找到了散景库,我试图将有效输入中的matplotib转换为散景组件。我读 .to_boke 方法已弃用。
datos = np.random.randn(1000)
## Discretizamos el conjunto de valores en n intervalos,
## en este caso 8 intervalos
datosbin = np.histogram(datos,
bins=np.linspace(np.min(datos), np.max(datos), 9))[0]
## Los datos los queremos en tanto por ciento
datosbin = datosbin * 100. / len(datos)
## Los datos los queremos en n direcciones/secciones/sectores,
## en este caso usamos 8 sectores de una circunferencia
sect = np.array([90, 45, 0, 315, 270, 225, 180, 135]) * 2. * math.pi / 360.
nombresect = ['E', 'NE', 'N', 'NW', 'W', 'SW', 'S', 'SE']
## Dibujamos la rosa de frecuencias
plt.axes([0.1, 0.1, 0.8, 0.8], polar=True)
plt.bar(sect, datosbin, align='center', width=45 * 2 * math.pi / 360.,
facecolor='b', edgecolor='k', linewidth=2, alpha=0.5)
plt.thetagrids(np.arange(0, 360, 45), nombresect, frac=1.1, fontsize=10)
plt.title(u'Procedencia de las nubes en marzo')
script, div = components(plt, CDN)
return render(request, 'consulta/resultado/imprimir.html', {'variables': variables,
'respuesta3': peticion3.content,
'lugar': lugar,
'hora_actual': hora_actual,
'hora_siguiente': hora_siguiente,
'dias': horas,
'Variables': variables_posibles,
'latitud':latitud,
'longitud': longitud,
"the_script": script,
"the_div": div})
我有 valueError (显然matplotlib.pyplot不是有效输入):
我在这里堆叠。这是我第一次使用图书馆和matplot。
我感谢任何帮助。非常感谢你。
PS:我编码的数字,我试图打印:
答案 0 :(得分:3)
您所要求的内容不受支持,并且不存在。 Bokeh或Matplotlib中没有将Matplotlib输出转换为Bokeh输出的功能部件。因此,此问题的答案是:
您要的是不可能的。
(作为Bokeh的共同创建者和首席维护者长达5年以上),对于用户来说,清楚明确地知道没有将MPL转换为Bokeh的“魔术子弹”非常重要。 错误信息 。
生成散景输出的唯一选择是直接使用本机散景API,例如bokeh.plotting
API。特别是,您可能想看一下wedge glyph,但是建议您,1.1.0
起,Bokeh没有任何内置的径向轴,因此您必须绘制所有轴元素并标签为“手工”。