当前位置:首页>开发>正文

django视图函数里能添加一个完整python代码吗 python 怎样数据可视化 3d

2023-04-25 11:58:28 互联网 未知 开发

 django视图函数里能添加一个完整python代码吗 python 怎样数据可视化 3d

django视图函数里能添加一个完整python代码吗

Django本身是由Python语言编写的,它的视图函数也是完全基于Python机制的,当然可以添加Python代码了!推荐阅读刘江的博客和教程:liujiangblog-com,写的不错。

python 怎样数据可视化 3d

准备工作

基本来讲,我们仍然需要创建一个图表并把想要的坐标轴添加到上面。但不同的是我们为图表指定的是3D视图,并且添加的坐标轴是Axes3D。

现在,我们可以使用几乎相同的函数来绘图了。当然,函数的参数是不同的,需要为3个坐标轴提供数据。

例如,我们要为函数mpl_toolkits.mplot3d.Axes3D.plot指定xs、ys、zs和zdir参数。其他的参数则直接传给matplotlib.axes.Axes.plot。下面来解释一下这些特定的参数。

1.xs和ys:x轴和y轴坐标。

2.zs:这是z轴的坐标值,可以是所有点对应一个值,或者是每个点对应一个值。

3.zdir:决定哪个坐标轴作为z轴的维度(通常是zs,但是也可以是xs或者ys)。

提示:模块mpl_toolkits.mplot3d.art3d包含了3D artist代码和将2D artists转化为3D版本的函数。在该模块中有一个rotate_axes方法,该方法可以被添加到Axes3D中来对坐标重新排序,这样坐标轴就与zdir一起旋转了。zdir默认值为z。在坐标轴前加一个``-``会进行反转转换,这样一来,zdir的值就可以是x、-x、y、-y、z或者-z。

操作步骤

以下代码演示了我们所解释的概念。
import random

import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
import matplotlib.dates as mdates

from mpl_toolkits.mplot3d import Axes3D

mpl.rcParams[font.size] =
fig = plt.figure()
ax = fig.add_subplot(111, projection=3d)

for z in [2011, 2012, 2013, 2014]:
xs = xrange(1,13)
ys = 1000 * np.random.rand(12)

color =plt.cm.Set2(random.choice(xrange(plt.cm.Set2.N)))
ax.bar(xs, ys, zs=z, zdir=y, color=color, alpha=0.8)

ax.xaxis.set_major_locator(mpl.ticker.FixedLocator(xs))
ax.yaxis.set_major_locator(mpl.ticker.FixedLocator(ys))

ax.set_xlabel(Month)
ax.set_ylabel(Year)
ax.set_zlabel(Sales Net [usd])

plt.show()

最新文章