added chart of inflation: debt vs ubi
This commit is contained in:
		
							parent
							
								
									3c425f7465
								
							
						
					
					
						commit
						b9a0ab4df6
					
				
							
								
								
									
										45
									
								
								econ-demo.py
									
									
									
									
									
								
							
							
						
						
									
										45
									
								
								econ-demo.py
									
									
									
									
									
								
							| @ -107,7 +107,7 @@ def visualize_ubi(terms=25): | |||||||
|             continue |             continue | ||||||
|         shares.append(calc_share_of_wealth(data)) |         shares.append(calc_share_of_wealth(data)) | ||||||
|     sow = pd.DataFrame(shares) |     sow = pd.DataFrame(shares) | ||||||
|     print(sow.keys()) |     # print(sow.keys()) | ||||||
|     x = [i for i in range(1,terms)] |     x = [i for i in range(1,terms)] | ||||||
|     assert(len(x) == len(shares)) |     assert(len(x) == len(shares)) | ||||||
| 
 | 
 | ||||||
| @ -132,5 +132,46 @@ def visualize_ubi(terms=25): | |||||||
|     plt.show() |     plt.show() | ||||||
|     return |     return | ||||||
| 
 | 
 | ||||||
| visualize_ubi(terms=50) | # visualize_ubi(terms=50) | ||||||
| 
 | 
 | ||||||
|  | def calc_total_supply(df): | ||||||
|  |     total = [] | ||||||
|  |     for key, data in df.items(): | ||||||
|  |         if key == "name": | ||||||
|  |             continue | ||||||
|  |         total.append(sum(data)) | ||||||
|  |     return total | ||||||
|  | 
 | ||||||
|  | def visualize_inflation(terms=50): | ||||||
|  |     participants = ["Alice", "Bob", "Charlie"] | ||||||
|  |     balances = [100,40,20] | ||||||
|  | 
 | ||||||
|  |     df = get_balances_over_time ( | ||||||
|  |         participants, balances, ubi, | ||||||
|  |         terms = terms | ||||||
|  |     ) | ||||||
|  |     total_supply_ubi = calc_total_supply(df) | ||||||
|  | 
 | ||||||
|  |     df_si = get_balances_over_time ( | ||||||
|  |         participants, balances, simple_interest, | ||||||
|  |         terms = terms | ||||||
|  |     ) | ||||||
|  |     total_supply_si = calc_total_supply(df_si) | ||||||
|  |     # + 1 because the initial frame is included this time | ||||||
|  |     x = [i for i in range(1,terms+1)] | ||||||
|  |     assert(len(x) == len(total_supply_si)) | ||||||
|  | 
 | ||||||
|  |     plt.style.use('dark_background') | ||||||
|  |     plt.plot( | ||||||
|  |         x, total_supply_ubi, color="cyan", label="UBI" | ||||||
|  |     ) | ||||||
|  |     plt.plot( | ||||||
|  |         x, total_supply_si, color="red", label="Debt (Simple Interest)" | ||||||
|  |     ) | ||||||
|  |     plt.title("Money Supply over Time: UBI vs Simple Interest") | ||||||
|  |     plt.legend() | ||||||
|  |     plt.xlabel("Terms") | ||||||
|  |     plt.ylabel("Total Currency") | ||||||
|  |     plt.show() | ||||||
|  | 
 | ||||||
|  | visualize_inflation(terms=75) | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user