Это немного сложно, но это example дает хорошую отправную точку. Данные для двух графиков хранятся в Pandas dataframe
.
Первые позволяет создать список случайных значений
y = numpy.random.randn(Nr)
и случайный выбор из этих чисел
gr = numpy.random.choice(list(violins), Nr)
то номер модифицируется, каждый выбор по-разному.
for i, letter in enumerate(violins):
y[gr == letter] *= norm_params[i][1] + norm_params[i][0]
и назначен DataFrame
df = pd.DataFrame(dict(Score = y, Group = gr))
и, наконец, DataFrame строится
fig = plotly.tools.FigureFactory.create_violin(df, data_header='Score', group_header='Group', colors='YlOrRd')
Если заменить данные с собственными значениями, например values1
и values2
#get the groups
gr = ['Value1' for i in range(Nr)]
gr.extend(['Value2' for i in range(Nr)])
#assign the values
y = numpy.random.randn(2*Nr)
y[0:Nr] = values1
y[Nr:] = values2
вы могли получить свои собственные скрипичные участки.
Вот минимальный пример, который создает две скрипки.
import plotly
import numpy
import pandas as pd
plotly.offline.init_notebook_mode()
Nr = 250
violins = 'AB'
y = numpy.random.randn(Nr)
gr = numpy.random.choice(list(violins), Nr)
norm_params = [(0, 1.2), (0.7, 1)]
for i, letter in enumerate(violins):
y[gr == letter] *= norm_params[i][1] + norm_params[i][0]
df = pd.DataFrame(dict(Score = y, Group = gr))
data_header = 'Score'
group_header = 'Group'
fig = plotly.tools.FigureFactory.create_violin(df, data_header='Score', group_header='Group', colors='YlOrRd')
plotly.offline.iplot(fig, filename='Two Violin Plots')