// Disable auto-rendering, deferring instead to Observable:
plt.autoRender=false;
// Plot meta data:
plt.description='Plot displaying a solution to the heat equation.';
plt.title='Temperatures Across Material';
// Plot dimensions:
plt.width=800;// pixels
// x-axis configuration:
plt.xLabel='x';
plt.xMin=-6;
plt.xMax=6;
// y-axis configuration:
plt.yLabel='Temperature';
plt.yMin=-5.0;
plt.yMax=5.0;
// Plot data:
plt.x=x;
plt.y=y;
returnplt;
}
functionrenderPlot(plt,x,y){
configurePlot(plt,x,y);
returnplt.render('html');
}
x=linspace(-6.0,6.0,100)
t=[0.1,1.0,10.0,50.0,100.0]
functionevaluate(){
varout;
vari;
varj;
out=newArray(t.length);
for(i=0;i<t.length;i++){
out[i]=newArray(x.length);
for(j=0;j<x.length;j++){
out[i][j]=u(x[j],t[i]);
}
}
returnout;
}
yData=evaluate()
xData=inmap(newArray(yData.length),()=>x)
html`${renderPlot(plt,xData,yData) }`
Purpose-built for displays of data
Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.