由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 咋用python做一个3D surface plot? 请教
相关主题
一个小问题超级新手, 求助 python pandas 和pandas_DataReader
python: 怎么避免memory leak?Python macro question
有matplotlib或numpy/scipy的同学帮我试试问一个python问题
如何自学pythonerror of importing data from txt file to IBM netezza SQL da (转载)
求python大牛指路error draw map from shape file Python 3.2 basemap
python3还是python?如何实现 strtok() ?
free back test tool in python - for quant algos (转载)这个有更好的算法吗?
data science如何进阶?IIS7.5 大于 64KB 文件不能下载 ? (转载)
相关话题的讨论汇总
话题: csv话题: row话题: ax话题: 3d话题: import
进入Programming版参与讨论
1 (共1页)
W***o
发帖数: 6519
1
我有一个csv文件,里面有多行多栏的数据,我想把这些数据通过3D surface plot表述
出来(x轴坐标就用第一列每行的cell 内容,比如Log1, Log2...; y轴就用第一行的cell
content (Sample1, Sample2 ...),z就用下面表格里的数据。我想到用matplotlib,
但是又不太会用,想请教一下。
Measure# Sample1 Sample2 Sample3 Sample4 Sample5
Log1 2.3 3.3 4.5 5.6 6.7
Log2 3.5 6.7 10.0 22.1 30
Log3 4.2 4.5 6.7 8.9 9.1
Log4 4.5 8.9 10.2 11.8 14.7
import csv
from matplotlib import pyplot as plt
import pylab
import numpy as np
from mpl_toolkits.mplot3d import Axes3D
csv_file_path='/path/to/my/CSV/my_file.csv' # read in this CSV file
mFile = open(csv_file_path, 'rb')
datafile = list(csv.reader(mFile, delimiter='t'))
x_ax = [] # a list of X labels
y_ax = [] # a list of Y labels
row_data = [] # a list of row values
Z = [] # a list of row_data (a row of data)
#parse the CSV file:
first_line = True # skip the first line which is the header
for row in datafile:
if first_line:
y_ax = row[1:]
print y_ax
first_line = False
continue
x_ax.append(row[0]) # X-axis labels
row_data = row[1:]
Z.append(row_data)
#prepare plotting
fig = plt.figure(figsize=(200, 6))
ax = fig.add_subplot(1, 2, 1, projection='3d')
ax.set_xticklabels(x_ax)
ax.set_yticklabels(y_ax)
ax.set_title("my title of chart")
surf = ax.plot_surface(X, Y, Z, rstride=1, cstride=1, cmap=cm.coolwarm,
linewidth=0, antialiased=False)
ax.set_zlim(0, 100)
fig.colorbar(surf, shrink = 0.5, aspect = 5)
plt.show()
我对python不懂太多,想请教一下应该怎么画这样的3D surface? 希望效果类似这个图:
谢谢
m******a
发帖数: 19
2
试下vtk吧
w*x
发帖数: 518
3
没明白,你的code不都写出来了么?
都用matplotlib了, csv就用
import numpy as np
data = np.genfromtxt('fname.csv', delimiter=',')
来读吧……
W***o
发帖数: 6519
4
the code does not work, which is why I posted her for help. thanks

【在 w*x 的大作中提到】
: 没明白,你的code不都写出来了么?
: 都用matplotlib了, csv就用
: import numpy as np
: data = np.genfromtxt('fname.csv', delimiter=',')
: 来读吧……

W***o
发帖数: 6519
5
谢谢,发现这个NP的genfromtxt都CSV很方便啊,还想请教一下,有没有按column读CSV
的方法可以调用?

【在 w*x 的大作中提到】
: 没明白,你的code不都写出来了么?
: 都用matplotlib了, csv就用
: import numpy as np
: data = np.genfromtxt('fname.csv', delimiter=',')
: 来读吧……

T****n
发帖数: 6187
6
你是说按column name读?文档有example的
http://docs.scipy.org/doc/numpy/reference/generated/numpy.genfr

CSV

【在 W***o 的大作中提到】
: 谢谢,发现这个NP的genfromtxt都CSV很方便啊,还想请教一下,有没有按column读CSV
: 的方法可以调用?

w*x
发帖数: 518
7
传入keyword写unpack=True就可以,看文档~

CSV

【在 W***o 的大作中提到】
: 谢谢,发现这个NP的genfromtxt都CSV很方便啊,还想请教一下,有没有按column读CSV
: 的方法可以调用?

1 (共1页)
进入Programming版参与讨论
相关主题
IIS7.5 大于 64KB 文件不能下载 ? (转载)求python大牛指路
急! Python 如何从文件读取数据(整数) ~~在线等python3还是python?
repast 请进: python debian安装问题free back test tool in python - for quant algos (转载)
请教 一个matlab画图的问题data science如何进阶?
一个小问题超级新手, 求助 python pandas 和pandas_DataReader
python: 怎么避免memory leak?Python macro question
有matplotlib或numpy/scipy的同学帮我试试问一个python问题
如何自学pythonerror of importing data from txt file to IBM netezza SQL da (转载)
相关话题的讨论汇总
话题: csv话题: row话题: ax话题: 3d话题: import