Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit6c6c797

Browse files
committed
Tidy code into methods
1 parente8f0490 commit6c6c797

File tree

2 files changed

+87
-53
lines changed

2 files changed

+87
-53
lines changed

‎sandbox/hidden_moment_app.py‎

Lines changed: 87 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,73 +1,107 @@
11
importdash
22
fromdashimportdcc,html
33
importnumpyasnp
4+
importpandasaspd
45
importplotly.graph_objsasgo
56

67
importhidden_momentsashide
78

8-
# Create Dash app
9-
app=dash.Dash(__name__)
10-
119
# ------------------------------------------------------------------------------------
1210
# ------------------------------------------------------------------------------------
13-
# SETUP
14-
moment=0
11+
# FUNCTIONS
12+
13+
defget_data(n_max,meta_n,moment,source='new'):
14+
15+
ifsource=='new':
16+
# GENERATE DATA
17+
# Speed Note: Takes a minute to run for n_max=40, meta_n=50, moment=0
18+
print("STARTING TO GENERATE DATA")
19+
hidden_moment_values=hide.make_hidden_moment_convergence_data(n_max=40,meta_n=50,moment=moment)
20+
print("FINISHED GENERATING DATA")
21+
22+
elifsource=='pickle':
23+
hidden_moment_values=pd.read_pickle('hidden_moment_samples.pkl')
24+
25+
else:
26+
# Simplified Dataset
27+
hidden_moment_values= {'a': [1,2,3],'b': [4,5,6]}
28+
29+
returnhidden_moment_values
30+
31+
32+
defmake_plots(hidden_moment_values):
33+
"""
34+
35+
hidden_moment_values :
36+
"""
1537

16-
# GENERATE DATA
17-
# Speed Note: Takes a minute to run for n_max=40, meta_n=50, moment=0
18-
print("STARTING TO GENERATE DATA")
19-
hidden_moment_values=hide.make_hidden_moment_convergence_data(n_max=40,meta_n=50,moment=moment)
20-
# DEBUG
21-
#hidden_moment_values = {'a': [1,2,3], 'b': [4,5,6]}
22-
print("FINISHED GENERATING DATA")
38+
# Calculate Average Values
39+
average_values= {key:np.mean(value)forkey,valueinhidden_moment_values.items()}
2340

41+
# ------------------------------------------------------------------------------------
42+
# MAKE TRACES
43+
44+
# Line Traces
45+
average_trace=go.Scatter(x=list(average_values.keys()),y=list(average_values.values()),mode='lines+markers',name='Average')
46+
47+
# Point Traces
48+
# Format the raw datapoints as traces
49+
raw_data_traces= []
50+
forkey,valuesinhidden_moment_values.items():
51+
raw_data_traces.append(go.Scatter(x=[key]*len(values),y=values,mode='markers',name=key))
2452

25-
# Calculate Average Values
26-
average_values= {key:np.mean(value)forkey,valueinhidden_moment_values.items()}
53+
plots= [dcc.Graph(
54+
id='average-plot',
55+
figure={
56+
'data': [average_trace,]
57+
+raw_data_traces,
58+
'layout':go.Layout(
59+
title='Convergence of the Average',
60+
xaxis=dict(title='Sample Size'),
61+
yaxis=dict(title=f'Hidden Moment:{moment}'),
62+
)
63+
}
64+
),
2765

28-
# Traces
29-
# Trace Of Average Values
30-
average_trace=go.Scatter(x=list(average_values.keys()),y=list(average_values.values()),mode='lines+markers',name='Average')
31-
# Raw Data Traces
32-
# Format the raw datapoints as traces
33-
raw_data_traces= []
34-
forkey,valuesinhidden_moment_values.items():
35-
raw_data_traces.append(go.Scatter(x=[key]*len(values),y=values,mode='markers',name=key))
66+
dcc.Graph(
67+
id='scatter-plot',
68+
figure={
69+
'data':raw_data_traces,
70+
'layout': {
71+
'title':'Raw Data For Each Sample Size',
72+
'xaxis': {'title':'Sample Size'},
73+
'yaxis': {'title':f'Hidden Moment:{moment}'}
74+
}
75+
}
76+
),
77+
]
78+
79+
returnplots
3680

3781
# ------------------------------------------------------------------------------------
3882
# ------------------------------------------------------------------------------------
39-
# Layout of the app
40-
app.layout=html.Div([
41-
42-
dcc.Graph(
43-
id='average-plot',
44-
figure={
45-
'data': [average_trace,]
46-
+raw_data_traces,
47-
'layout':go.Layout(
48-
title='Convergence of the Average',
49-
xaxis=dict(title='Sample Size'),
50-
yaxis=dict(title=f'Hidden Moment:{moment}'),
51-
)
52-
}
53-
),
54-
55-
56-
dcc.Graph(
57-
id='scatter-plot',
58-
figure={
59-
'data':raw_data_traces,
60-
'layout': {
61-
'title':'Raw Data For Each Sample Size',
62-
'xaxis': {'title':'Sample Size'},
63-
'yaxis': {'title':f'Hidden Moment:{moment}'}
64-
}
65-
}
66-
)
67-
68-
69-
])
83+
# SETUP
84+
moment=0
85+
86+
hidden_moment_values=get_data(n_max=40,
87+
meta_n=50,
88+
moment=moment,
89+
source='pickle')
90+
91+
plots=make_plots(hidden_moment_values)
7092

7193
# Run the app
7294
if__name__=='__main__':
95+
96+
# Create Dash app
97+
app=dash.Dash(__name__)
98+
99+
# ------------------------------------------------------------------------------------
100+
# ------------------------------------------------------------------------------------
101+
# LAYOUT
102+
103+
app.layout=html.Div(
104+
plots,
105+
)
106+
73107
app.run_server(debug=True)

‎sandbox/hidden_moment_samples.pkl‎

17.1 KB
Binary file not shown.

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp