Trying to make a 3dplot
Based on tikz-3dplot
package definitions.
\documentclass{article}
\usepackage{tikz}
\usepackage{tikz-3dplot}
\begin{document}
%Angle Definitions
%-----------------
%set the plot display orientation
%syntax: \tdplotsetdisplay{\theta_d}{\phi_d}
\tdplotsetmaincoords{65}{110}
\pgfmathsetmacro{\rvec}{1}
\pgfmathsetmacro{\thetavecc}{55}
\pgfmathsetmacro{\phivecc}{35}
\pgfmathsetmacro{\thetaveccc}{39.7}
\pgfmathsetmacro{\phiveccc}{55}
\begin{tikzpicture}[scale=5,tdplot_main_coords,>=latex]
\shadedraw[tdplot_screen_coords,ball color = white] (0,0) circle (\rvec);
\node[tdplot_screen_coords,xshift=1cm,yshift=3mm] (0,0) {$q=-1$};
\def\h{1}
%-----------------------
\coordinate (O) at (0,0,0);
%draw the main coordinate system axes
\draw[thick,opacity=0.5] (0,0,0) -- (1,0,0);
\draw[thick,opacity=0.5] (0,0,0) -- (0,1,0);
\draw[thick,opacity=0.5] (0,0,0) -- (0,0,1);
\draw[thick,->] (1,0,0) -- (2.3,0,0) node[anchor=north east]{$x$};
\draw[thick,->] (0,1,0) -- (0,1.5,0) node[anchor=north west]{$y$};
\draw[thick,->] (0,0,1) -- (0,0,1.5) node[anchor=south]{$z$};
% Equator
\draw[dashed] (\rvec,0,0) arc (0:360:\rvec);
\draw[thick] (\rvec,0,0) arc (0:110:\rvec);
\draw[thick] (\rvec,0,0) arc (0:-70:\rvec);
% Flux arrows
\foreach \t in {10,20,...,340}
\foreach \f in {180,170,...,0}
\draw [black!60,opacity=1.0, <-, thick]
({sin(\f - \h)*cos(\t - \h)}, {sin(\f - \h)*sin(\t - \h)}, {cos(\f - \h)})
-- ({(1 + 0.2*cos(90 - \f))*sin(\f - \h)*cos(\t - \h)},
{(1 + 0.2*cos(90 - \f))*sin(\f - \h)*sin(\t - \h)},
{(1 + 0.2*cos(90 - \f))*cos(\f - \h)});
\end{tikzpicture}
\end{document}
The following code does draw the sphere (above the axes to hide them) and the -1. It uses tikz-3dplot
which is in TeX Live.
\documentclass[tikz]{standalone}
\usepackage{tikz-3dplot}
\begin{document}
\tdplotsetmaincoords{60}{135}
\pgfmathsetmacro{\rvec}{.8}
\begin{tikzpicture}[scale=5,tdplot_main_coords]
\coordinate (O) at (0,0,0);
\draw[thick,->] (-1.5,0,0)-- (1.5,0,0) node[anchor=north east]{$x$};
\draw[thick,->] (0,-1.5,0)--(0,1.5,0) node[anchor=north west]{$y$};
\draw[thick,->] (0,0,-1.5)-- (0,0,1.5) node[anchor=south]{$z$};
\shade[tdplot_screen_coords,ball color = white] (0,0) circle (\rvec);
\foreach \i in {0,20,...,360}
\draw[tdplot_screen_coords,<-] (\i:.9*\rvec) -- (\i: 1.1*\rvec);
\node[tdplot_screen_coords] (0,0) {$-1$};
\end{tikzpicture}
\end{document}