【发布时间】:2018-07-14 11:54:10
【问题描述】:
类似于:Plot size = 1/{N∗⌈log2N⌉∗[(1/70)/60]} in R?
但是在python中使用matplotlib(我想用matplotlib绘制函数会更好):
size = 1/{N∗⌈log_2(N)⌉∗[(a)/60]}
a = [1/70, 1/60, 1/50, 1/40]
如何在 python 中使用 matplotlib 绘制这个函数(对于 a 中的每个值 - 它应该是一个图形)?
(⌈⌉= ceil)
y 轴标注“size”,x 轴标注“N”。
N >= 2,N是自然数(2,3,4,5,6,...)(但没必要实现这个...见上图)
我已经尝试过这个作为第一种方法:
import matplotlib.pyplot as plt
import numpy as np
n = np.arange(3,50,0.1)
size = (1)/n*np.ceil(np.log2(n))*((1/70)/60))
plt.plot(n,size)
plt.axis([3,50,0,550])
plt.show()
【问题讨论】:
-
您的方程式中有错字,应该是
size = 1/(n*np.ceil(np.log2(n))*((1/70)/60))。此外,plt.axis()并不像您认为的那样工作。您需要调整plt.xlim()和plt.ylim()。除此之外,请说明您找到的解决方案有什么问题 -
我“找到”的解决方案是使用在线工具绘制的,并通过绘图添加了一些信息... ;)
标签: python matplotlib plot logarithm