nivo provides quite high level components, so it should be used if you have no prior experience with d3 or want a quick/easy setup. Also its components can be easily tweaked by adjusting a few knobs, and offers various flavors for each chart types.
Yes, sure! nivo was built with this requirement in mind from the very beginning, you even have an HTTP rendering API for most components :)
Just make sure to use SVG or HTML implementations.
Yes you can! SVG/HTML are not performing very well when dealing with thousands of nodes, that's why you have some canvas based implementations which are able to handle pretty large ones.
Check if the parent have a define height, otherwise the responsive component won't be able to render.