gpt4 book ai didi

Python: 'numpy.ndarray' 对象没有属性 'violinplot'

转载 作者:太空宇宙 更新时间:2023-11-03 16:55:01 25 4
gpt4 key购买 nike

过去几周我一直在使用 matplotlib,学习如何制作不同的图表等。我目前处于静止状态。我正在处理基因表达数据,因此我有一个 csv 文件,其中包含 3 列数据(突变、移码和非突变)。但是,我正在尝试制作 fiddle 图,但不断收到错误:

Traceback (most recent call last):
File "/home/fmohamed/Documents/violinplot_script.py", line 39, in <module>
axes.violinplot(all_data,
AttributeError: 'numpy.ndarray' object has no attribute 'violinplot'

我不确定我做错了什么,但我的代码位于下面:

import matplotlib.pyplot as plt
import numpy as np
import csv

#import data:
with open('/home/fmohamed/Documents/oc_data.csv') as csvfile:
spamreader = csv.reader(csvfile, delimiter = ' ')
array = []
for row in spamreader:
array.append(row)

# sort out bad data:
splitArray = [row[0].split(',') for row in array]
splitArray = [row for row in splitArray if row[0] != '' and row[1] != '' and
row[2] != '']
descr = splitArray[0]
splitArray.pop(0) #remove the column descriptions from array
all_data = []
for row in splitArray:
all_data.append(float(row[0]))
all_data.append(float(row[1]))
all_data.append(float(row[2]))

all_data = np.array(all_data)

fig, axes = plt.subplots(nrows=1, ncols=3, figsize=(12, 5))

# plot violin plot
axes.violinplot(all_data,
showmeans=False,
showmedians=False)
axes.set_title('violin plot')


# adding horizontal grid lines
axes.yaxis.grid(True)
axes.set_xticks([y+1 for y in range(len(all_data))])
axes.set_xlabel('xlabel')
axes.set_ylabel('ylabel')

# add x-tick labels
plt.setp(axes, xticks=[y+1 for y in range(len(all_data))],
xticklabels=['mutated', 'frameshift', 'nonmutated'])

plt.show()

预先感谢大家提供的任何帮助。

最佳答案

检查 matplotlib 的版本,因为 fiddle 图仅自 matplotlib 1.4 起可用。 。要检查 matplotlib 版本,只需在 python 终端中输入:

>>> import matplotlib
>>> print matplotlib.__version__

关于Python: 'numpy.ndarray' 对象没有属性 'violinplot',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35489751/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com