我正在尝试使用matplotlib.pyplot在箱形图/小提琴图中绘制形式为.csv文件的数据列。
将数据帧[df]设置为一列数据时,绘图工作正常。但是,一旦我尝试绘制两列,就不会生成图表,并且代码似乎正在运行,因此我认为传递数据的方式有些不同。每列长54,500行。
import os
import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd
from pandas import read_csv
os.chdir(r"some_directory//")
df = read_csv(r"csv_file.csv")
# the csv file is 7 columns x 54500 rows, only concerned with two columns
df = df[['surge', 'sway']]
# re-size the dataframe to only use two columns
data = df[['surge', 'sway']]
#print data to just to confirm
print(data)
plt.violinplot(data, vert=True, showmeans=True, showmedians=True)
plt.show()
如果将数据线更改为data = df ['surge'],则可以得到具有54501浪涌值的完美曲线。
当我将第二个变量引入为data = df [['surge','sway']]时,是程序被挂起的时候。我应该注意,如果我让data = df [['surge']]存在相同的问题,那么我认为这与双花括号有关,也许是从列表到数组?