我经常在R中制作数字(探索性数据分析类型).我也用Python编程,并且想知道matplotlib中是否有值得学习的功能或概念.例如,我对R非常满意 - 但是它的image()函数会生成带有像素化输出的大文件,而Matlab的等效数字(我也经常在Matlab中编程)似乎可以在文件大小上进行管理并且"平滑" - matplotlib还提供这样的减少......?但更一般地说,我想知道matplotlib可能带来的其他优势.我并不是说这是一个拖钓问题.谢谢.
我需要创建一个"树图"式图表来显示不同场景的案例数量,如下所示:

图片引自:
Pediatrics. 2005 Dec;116(6):1317-22.
Electronic surveillance system for monitoring surgical antimicrobial prophylaxis.
Voit SB, Todd JK, Nelson B, Nyquist AC.
Run Code Online (Sandbox Code Playgroud)
我可以使用table命令轻松地从R中获取数字,但这不是一个非常好的方式来呈现它.
图表可以没有任何花哨的颜色或东西,我只想使用格式来显示数字.有什么建议?
我有一个看起来像这样的数据文件:
A 0.2 0.5
B 0.65 0.8
C 0.4 0.2
Run Code Online (Sandbox Code Playgroud)
即,它包含三列,其中第一列包含标签,另外两列包含浮点值.列由空格分隔.
我想以这样的方式绘制图标,使标签在x轴上显示为抽搐,而将列绘制为彼此叠加的两个不同颜色的条形图.
如何使用Gnuplot实现这一目标?
我需要使用我的Java(J2SE)应用程序创建时间线图.
什么库可以使用它来创建一个时间线图就像任何这些:






我有一个看起来像的df:
df.head()
Out[1]:
A B C
city0 40 12 73
city1 65 56 10
city2 77 58 71
city3 89 53 49
city4 33 98 90
Run Code Online (Sandbox Code Playgroud)
可以通过以下代码创建示例df:
df = pd.DataFrame(np.random.randint(100,size=(1000000,3)), columns=list('ABC'))
indx = ['city'+str(x) for x in range(0,1000000)]
df.index = indx
Run Code Online (Sandbox Code Playgroud)
我想做的是:
a)确定A列的适当直方图桶长度,并将每个城市分配给A列的桶
b)确定B列的适当直方图桶长度,并将每个城市分配给B列的桶
也许结果df看起来像(或者是否有更好的内置方式在熊猫?)
df.head()
Out[1]:
A B C Abkt Bbkt
city0 40 12 73 2 1
city1 65 56 10 4 3
city2 77 58 71 4 3
city3 89 53 49 5 3
city4 33 98 90 …Run Code Online (Sandbox Code Playgroud) 我试图了解如何集成D3和React.具体来说,我试图了解如何使用D3渲染可视化对React的影响.正如这个优秀的问题所解释的那样:
[...]目前没有很好的方法可以使用React和D3 [...]这是因为在React世界中你不进行直接的DOM操作,但是在d3世界中你唯一能做的就是这样做.
答复继续说
在我看来,目前对Force Layouts等的共识是简单地退出React以获取这些组件并让d3做其事.这不是理想的,但它的性能更高.
让D3照顾渲染对React有什么影响?它是否只会影响使用D3或其他组件的组件的性能?例如,可以用某种方式使用D3螺丝和React的虚拟DOM直接操作DOM吗?我基本上试图了解使用D3需要支付的价格.
我试图将一些数据可视化为饼图.我的数据被构造为(Season, Int)元组列表,其中整数表示特定季节可用的项目数.
困难在于一个项目可以在多个季节:一个项目可以在秋季和冬季都有效.
是否可以将此信息显示为饼图?在计算百分比时,不清楚分母应该是什么,因为计数的总和可能大于项目总数.
作为一个让它更清晰的例子,假设我有10个项目.有效的数据集可能是:
这里代表的项目总数是22,但实际上只有10项.
计算下降百分比4 / 10并不合理,但两者都没有4 / 22.
这些数据是否与饼图(或其他面向百分比的图表)不兼容?
尽管经过无数次读取D3 API,我仍在努力理解D3中的合并功能.
API说:"此方法通常用于在数据连接后合并输入和更新选择.单独修改输入和更新元素后,您可以合并这两个选项并在两者上执行操作而无需重复代码."
这是一个在力导向图表中直截了当地使用它的例子,其中每个勾号都会调用勾选的函数:
var simulation = d3.forceSimulation(nodes)
.force("charge", chargeForce)
.force("center", centerForce)
.on("tick", ticked);
function ticked() {
var u = d3.select("svg").selectAll("circle").data(nodes)
u.enter().append("circle").attr("r",5)
.merge(u) // What is the merge function doing here?
.attr("cx", d => d.x)
.attr("cy", d => d.y)
u.exit().remove() // Why is it necessary to remove excess objects w/ the exit selection?
}
Run Code Online (Sandbox Code Playgroud)
我理解数据绑定是如何工作的,以及enter()和exit()选择是如何工作的.但是,我以前从未使用过"合并",我不明白它在这里做什么.如果有人可以一步一步地简要介绍这个功能中发生的事情,那将非常有用.我相信其他人也有类似的问题.
这是我要运行的代码:
ax = plt.axes(axisbg='#E6E6E6')
ax.set_axisbelow(True)
plt.grid(color='w',linestyle='solid')
for spine in ax.spines.values():
spine.set_visible(False)
ax.xaxis.tick_bottom()
ax.yaxis.tick_left()
ax.tick_params(colors='gray',direction='out')
for tick in ax.get_xticklabels():
tick.set_color('gray')
for tick in ax.get_yaxislabels():
tick.set_color('gray')
ax.hist(x,edgecolor='E6E6E6',color='E6E6E6');
Run Code Online (Sandbox Code Playgroud)
错误是:AttributeError:未知属性axisbg
请帮助我确定错误。
我如何在基本 R 中为色盲人士能够看到的图选择 4-8 种颜色?
下面是基本的 R 色盘。在BASE R 中寻找解决方案不使用包的情况下。
Base R 调色板指南:http : //www.stat.columbia.edu/~tzheng/files/Rcolor.pdf
色盲的调色板:http : //mkweb.bcgsc.ca/colorblind/
具体如何在BASE R 中手动创建可访问的颜色?
例如“朱红色”、“蓝绿色”和“红紫色”,如下面的纸图中所述。